F.2.5. 職務の定義
以前は、sysvinit パッケージがデフォルト設定の init デーモンを提供していました。この init デーモンは、システム起動時に
/etc/inittab
スクリプトを実行し、ランレベルごとに定義されたシステムプロセスを起動させる。デフォルトの設定では、upstart パッケージが提供するイベント駆動型の init デーモンが使用されるようになりました。特定の イベントが 発生するたびに、init デーモンは /etc/event.d
ディレクトリーに格納されている ジョブを 処理します。init デーモンは、システムの起動をこのようなイベントとして認識します。
各ジョブには通常、プログラムと、そのプログラムを実行または停止するための init の トリガーとなるイベントが指定されます。ジョブによっては タスクとして 構築され、アクションを実行した後、別のイベントがジョブを再度トリガーするまで終了するものもあります。その他のジョブは サービスとして 構築され、他のイベント (またはユーザー) が停止するまで init が 実行され続けます。
例えば,
/etc/events.d/tty2
ジョブは,システムが起動してからシャットダウンするまで,あるいは他のイベント (ランレベル変更など) で停止するまで, tty2 上の仮想端末を維持するためのサービスである.その間に仮想端末が予期せず停止した場合、init が 再起動するようにジョブが構築されています。
# tty2 - getty # # This service maintains a getty on tty2 from the point the system is # started until it is shut down again. start on stopped rc2 start on stopped rc3 start on stopped rc4 start on started prefdm stop on runlevel 0 stop on runlevel 1 stop on runlevel 6 respawn exec /sbin/mingetty tty2