Solaris のシステム管理 (基本編)

IA: ブートプロセス

次の表に、IA システムのブートプロセスの説明を示します。

表 15-3 IA: ブートプロセスの説明

ブート段階 

説明 

BIOS 

1. システムの電源をオンにすると、BIOS がセルフテスト診断を実行してシステムのハードウェアとメモリーを検査する。エラーが検出されなければ、システムは自動的にブートを開始する。エラーが検出されると、復元オプションを示すエラーメッセージが表示される。 

追加のハードウェアデバイスの BIOS がここで実行される。 

 

2. BIOS ブートプログラムが、ブートデバイスの最初の物理セクターを読もうとする。ブートデバイス上のこの最初のディスクセクターにはマスターブートレコード mboot が格納されており、このレコードが読み込まれて実行される。mboot ファイルが見つからなかった場合は、エラーメッセージが表示される。

ブートプログラム 

3. マスターブートレコード mboot には、アクティブなパーティションと、Solaris ブートプログラム pboot の位置を見つけるのに必要なディスク情報が格納されており、mboot は、pboot を読み込んで実行する。

 

4. Solaris ブートプログラム pboot が一次ブートプログラム bootblk を読み込む。このプログラムは、ufs ファイルシステムにある二次ブートプログラムを読み込む。

 

5. ブート可能なパーティションが複数ある場合、bootblkfdisk テーブルを読んでデフォルトのブートパーティションをさがし、利用可能なパーティションのメニューを作成して表示する。ブートするパーティションを選択する際に、30 秒経過するとタイムアウトになる。これは、ブート可能なパーティションが複数ある場合にのみ発生する。

 

6. bootblk はルート (/) ファイルシステムで二次ブートプログラム boot.bin または ufsboot をさがし、実行する。Solaris Device Configuration Assistant (デバイス構成用補助) を起動するときは、5 秒以内に自動ブートに割り込みをかける。

 

7. 二次ブートプログラム boot.bin または ufsboot/etc/bootrc スクリプトを実行するコマンドインタプリタを起動する。ここでシステムのブート方法を選択するメニューが表示される。デフォルトでは、カーネルが読み込まれ、実行される。ブートオプションを指定したり、ブートインタプリンタを起動するときは、5 秒以内に行う。

カーネル初期設定 

8. カーネルは二次ブートプログラム boot.bin または ufsboot を使用してファイルを読み取り、カーネル自身を初期化して、モジュールの読み込みを開始する。カーネルはルート (/) ファイルシステムをマウントするのに十分なモジュールをロードすると、 二次ブートプログラムの対応づけを解除し、それ自身のリソースを使って動作を続ける。

 

9. カーネルがユーザープロセスを作成し、/etc/inittab ファイルを読んで他のプロセスを起動する /sbin/init プロセスを起動する。

init

10. /sbin/init プロセスは実行制御 (rc) スクリプトを開始し、このスクリプトが一連の他のスクリプトを実行する。それらのスクリプト (/sbin/rc*) はファイルシステムを検査、マウントし、さまざまなプロセスを実行して、システム保守作業を実行する。