PC UNIXの起動と起動ファイルの解読 |
YAMAMORI Takenori ●yamamori |
/sbin/initは,カーネルによって一番最初に実行されるコマンドです. しかし,あえてinit以外のコマンドとして,/bin/shなどのシェルを initの代用として指定してOSを起動することも可能です. Linuxの場合は,LILOのプロンプトに対して次のようにオプションを指定して 起動します.
linux init=/bin/sh
実際に起動すると,カーネルがrootファイルシステムをマウントした直後, /bin/shが直接動き出し,コンソールに対して「#」のプロンプトを出します.
この手法は,システムがトラブルを起こして ランレベル1(シングルユーザモード)でさえ起動しなくなったような場合に, システムの修復の役に立つことがあります. ただし,このようにして起動されたシステムは, 通常のinitの存在しない特殊な環境となり, initの代用として起動された/bin/shをexitすると, そのままシステムが停止してしまうため,注意が必要です.