GNU/Linux >> Linux の 問題 >  >> Linux

Linux –Linuxが「init=/ bin / bash」を許可するのはなぜですか?

最近、起動する前にGRUBを編集して、rw init=/bin/bashを追加するとわかりました。 最終的にルートシェルになります。

なぜこれが起こるのか知りたいすべてを理解したいという状態にあります。バグですか?それは機能ですか?コンピューターに物理的にアクセスできる場合にのみ機能するため、管理者が問題を修正するのに役立ちますか?

GRUBまたは実際のカーネルによって提供されますか?

承認された回答:

これは機能であり、システムのメンテナンスに使用されます。これにより、システム管理者は、混乱した初期化ファイルからシステムを回復したり、忘れたパスワードを変更したりできます。

Red Hatメーリングリストのこの投稿では、いくつかのことを説明しています:

Unixライクなシステムでは、initが最初に実行されるプロセスであり、
これまでに実行されたすべてのプロセスの最終的な祖先です。
すべてのinitスクリプトを実行する責任があります。

Linuxカーネルに、システムのinitではなく/ bin/bashをinitとして実行するように指示しています。
[…]

したがって、何も利用しておらず、標準のカーネル機能を使用しているだけです。

その上、コメントで述べられているように、rw フラグはinit=とは別のものです 、ルートファイルシステムを読み取り/書き込みとしてマウントするようにシステムに指示するだけです(たとえば、誤って構成されたファイルを編集したり、パスワードを変更したりできます)。


Linux
  1. / bin/shが/bin/bashではなく/bin/ dashを指すのはなぜですか?

  2. すべての Linux システム管理者が怠惰であるべき 12 の理由

  3. Linux がコンピューターを熱くするのはなぜですか?

  1. POSIXとは何ですか? Linux / UNIXユーザーにとってなぜ重要なのですか?

  2. Linuxシステムのファイアウォールにセキュリティを強化する

  3. Linux のカーネルがモノリシックであるのに、なぜ Linux は Unix に似ているのですか?

  1. Linux –Setuidが機能しないのはなぜですか??

  2. Linux –カーネルがInitを実行できないのはなぜですか?

  3. 10 Linux システム初期化スクリプトの insserv コマンドの例