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

/etc/inittab ファイル

init または shutdown コマンドを使用してシステムをブートしたり、実行レベルを変更したりすると、init デーモンは /etc/inittab ファイルから情報を読み取ってプロセスを起動します。/etc/inittab ファイルには、init プロセスにとって重要な次の情報が定義されています。

/etc/inittab ファイル内の各エントリは、次のフィールドからなります。

id:rstate :action:process

次の表に、inittab エントリの各フィールドを要約します。

表 18–4 inittab ファイルのフィールドの説明

フィールド 

説明 

id

エントリに固有の (一意の) 識別子。 

rstate

このエントリが適用される実行レベルのリスト。 

アクション

プロセスフィールドに指定されたプロセスの実行方法。指定できる値は、 sysinitbootbootwaitwait、および respawn です。

ほかの action キーワードについては、inittab(4) のマニュアルページを参照してください。

process

実行するコマンドまたはスクリプトを定義します。 


例 18–2 デフォルトの inittab ファイル

次の例では、Solaris リリースでインストールされるデフォルトの inittab ファイルを示します。そのあとに、この例の出力の各行についての説明も示します。


ap::sysinit:/sbin/autopush -f /etc/iu.ap  (1)
sp::sysinit:/sbin/soconfig -f /etc/sock2path             (2)
smf::sysinit:/lib/svc/bin/svc.startd    >/dev/msglog 2<>/dev/msglog      (3)
p3:s1234:powerfail:/usr/sbin/shutdown -y -i5 -g0 >/dev/msglog 2<>/dev/...(4)
  1. STREAMS モジュールを初期化します

  2. ソケット転送プロバイダを構成します

  3. SMF 用のマスターリスタータを初期化します

  4. 電源障害の場合のシャットダウンを指定します


システムが実行レベル 3 になると実行される処理

  1. init プロセスが起動されます。init プロセスは、/etc/default/init ファイルを読み取って環境変数を設定します。デフォルトでは、TIMEZONE 変数だけが設定されます。

    1. initinittab ファイルを読み取り、次の処理を行います。

    2. action フィールドが sysinit になっているすべてのプロセスエントリを実行して、ユーザーがログインする前に特別な初期設定処理がすべて行われるようにします。

    3. 起動アクティビティーを svc.startd に渡します。

    init プロセスが inittab ファイルを使用する方法については、init(1M) のマニュアルページを参照してください。