システム実行レベルの変更
SunOS 5.6 の init コマンドにより、システムの実行レベル (初期設定状態) を制御し、各種の動作モードを容易に切り替えることができます。SunOS 5.6 はすべてのシステム状態を 1 つのファイルに書き込むのではなく、/sbin/rc スクリプトを使用してそれぞれの実行レベルを制御します。これにより、新しいスクリプトを作成したり、既存のものを修正する場合、それぞれのファイルを変更することができます。SunOS 4.x システムでは、/etc/rc、/etc/rc.boot、/etc/rc.local ファイルを使用して実行レベルを制御していました。
SunOS 4.x には、prom モニタ、シングルユーザ、マルチユーザの 3 つの実行レベルがありました。これらは、SunOS 5.6 の実行レベル 0、1、3 に相当します。
表 8-3 に各実行レベルの /sbin/rc スクリプトの動作の概要を示します。
表 8-3 SunOS 5.6 初期設定実行レベル
実行レベル
|
デフォルトの SunOS 5.6 の機能
|
0
|
電源を切っても安全なように、システムをシャットダウンする。システムサービスとデーモンを停止させる。実行中のプロセスをすべて終了させる。すべてのファイルシステムのマウントを解除する。
|
1
|
システム上に 1 ユーザしか許さないシングルユーザ (システム管理者) 状態。システムサービスとデーモンを停止させる。
実行中のプロセスをすべて終了させる。すべてのファイルシステムのマウントを解除する。
|
2
|
NFS システムをエクスポートしない通常のマルチユーザ状態。timezone 変数を設定する。/usr ファイルシステムをマウントする。/tmp と /var/tmp ディレクトリ内を削除する。ネットワークインタフェースをロードしプロセスを起動する。cron デーモンを起動する。uucp tmp ファイルをクリーンアップする。lp システムを起動する。sendmail デーモンを起動する。
|
3
|
NFS システムをエクスポートするファイルサーバの通常のマルチユーザ状態。実行レベル 2 における作業をすべて実行する。NFS システムデーモンを起動する。
|
4
|
代替マルチユーザ状態 (未使用)。
|
5
|
ソフトウェアリブート。EEPROM デフォルト以外のブートデバイスの入力を要求する。
|
r
|
リブート。アクティブなプロセスをすべて強制終了させる。ファイルシステムのマウントを解除し、/etc/inittab にある initdefault エントリに従ってリブートする。
|
S,s
|
シングルユーザ状態。ファイルシステムを一部マウントし、アクセス可能にする。
|