Inittab-Linux / Unixコマンド

inittab - sysv互換のinitプロセスで使用されるinittabファイルの形式

説明

inittabファイルには、起動時や通常の操作時にどのプロセスが起動するかが記述されています(例:/etc/init.d/boot、/etc/init.d/rc、gettys ...)。 Init (8)は、複数のランレベルを区別します。複数のランレベルは 、起動された独自のプロセスセットを持つことができます。 有効なランレベルは、 オンデマンドエントリの場合は0〜6プラスABCです。 inittabファイルのエントリの形式は次のとおりです。

id:runlevels:action:process

`# 'で始まる行は無視されます。

idinittab内のエントリを識別する1〜4文字の一意のシーケンスです(ライブラリ<5.2.18またはa.outライブラリでコンパイルされたsysvinitのバージョンは2文字です)。

注意:gettysやその他のログインプロセスの場合、 idフィールドは対応するttyの接尾辞(tty1の場合は1)にする必要があります。 そうしないと、ログインアカウンティングが正しく機能しない可能性があります。

runlevelsは、指定されたアクションを実行するランレベルをリストします。

アクションは、どのアクションを取るべきかを記述する。

processは実行されるプロセスを指定します。 プロセスフィールドが `+ '文字で始まる場合、 initはそのプロセスのutmpとwtmpのアカウンティングを行いません。 これは、独自のutmp / wtmpハウスキーピングを行うことを主張するgettysにとって必要です。 これは歴史的なバグでもあります。

runlevelsフィールドには、異なるランレベルの複数の文字を含めることができます。 たとえば、 123は、プロセスをランレベル1、2、および3で開始する必要があることを指定します。 オンデマンドエントリのランレベルには、 AB 、またはCが含まれます。 sysinitboot 、およびbootwaitエントリのrunlevelsフィールドは無視されます。

システムランレベルが変更されると、新しいランレベルに指定されていない実行中のプロセスは、まずSIGTERMで、次にSIGKILLで終了します。

アクションフィールドの有効なアクションは次のとおりです。

再創造する

プロセスは終了するたびに再起動されます(例えばgetty)。

待つ

プロセスは、指定されたランレベルが入力され、 initが終了を待つときに一度開始されます。

一度

プロセスは、指定されたランレベルが入力されると1回実行されます。

ブート

このプロセスは、システムの起動中に実行されます。 runlevelsフィールドは無視されます。

ブートウェイト

プロセスはシステムのブート中に実行され、 initは終了を待ちます(例えば/ etc / rc)。 runlevelsフィールドは無視されます。

オフ

これは何もしません。

オンデマンド

オンデマンドランレベルでマークされたプロセスは、指定されたオンデマンドランレベルが呼び出されるたびに実行されます。 しかし、ランレベルの変更は起こりません( オンデマンドランレベルは `a '、` b'、 `c ')。

initdefault

initdefaultエントリは、システム起動後に入力するランレベルを指定します。 存在しない場合、 initはコンソール上にランレベルを要求します。 プロセスフィールドは無視されます。

シスニット

このプロセスは、 システムの起動中に実行されますbootまたはbootwaitエントリの前に実行されます。 runlevelsフィールドは無視されます。

パワーウェイト

電源が切れたときに処理が実行されます。 Initは、通常、コンピュータに接続されたUPSと通信するプロセスによって通知されます。 Initはプロセスが終了するのを待ってから続行します。

パワーフェイル

powerwaitに関してはinitがプロセスの完了を待つことを除いて。

パワークウェイト

このプロセスは、 initが電源が復旧したことが通知されるとすぐに実行されます。

パワーフェイル

このプロセスは、外部UPSのバッテリがほぼ空であり、電源が故障していることがinitに通知されたときに実行されます(外部UPSと監視プロセスがこの状態を検出できる場合)。

ctrlaltdel

プロセスは、 initがSIGINTシグナルを受け取ったときに実行されます 。 これは、システムコンソール上の誰かがCTRL-ALT-DELキーの組み合わせを押したことを意味します。 通常、シングルユーザーレベルに入るか、マシンを再起動するために、何らかの種類のシャットダウンを実行する必要があります。

kbrequest

このプロセスは、 initがキーボード・ハンドラからコンソール・キーボード上で特殊なキーの組み合わせが押されたという信号を受け取ったときに実行されます。

この関数のドキュメントはまだ完全ではありません。 kbd-x.xxパッケージにはより多くのドキュメントがあります(最新のものはkbd-0.94です)。 基本的には、キーボードの組み合わせを "KeyboardSignal"アクションにマッピングしたいとします。 たとえば、この目的でAlt-Uparrowをマップするには、キーマップファイルで次のように入力します。

altキーコード103 = KeyboardSignal

使用例

これは古いLinux inittabに似たinittabの例です:

#etc / getty 9600 tty2 3:1:respawn:/ etc / getty 9600 tty1 2:1:respawn:/ etc / getty 9600 tty2 3:1: etc / getty 9600 tty3 4:1:respawn:/ etc / getty 9600 tty4

このinittabファイルは、ブート時に/ etc / rcを実行し、tty1-tty4でgettysを起動します。

さまざまなランレベルのより洗練されたinittab (内部のコメントを参照):

#IDで実行するレベル:2:initdefault:#何かの前にシステムを初期化する。 si :: sysinit:/etc/rc.d/bcheckrc#ランレベル0,6は停止して再起動し、1は保守モードです。 l0:0:待機:/etc/rc.d/rc.halt l1:1:待機:/etc/rc.d/rc.single l2:2345:待機:/etc/rc.d/rc.multi l6: 6:wait:/etc/rc.d/rc.reboot# "3指挨拶"で何をするか。 ca :: ctrlaltdel:/ sbin / shutdown -t5 -rf now#ランレベル2と3:コンソールのgetty、レベル3もモデムポートのgetty。 1:23:respawn:/ sbin / getty tty1 VC linux 2:23:respawn:/ sbin / getty tty2 VC linux 3:23:respawn:/ sbin / getty tty3 VC linux 4:23:respawn:/ sbin / getty tty4 VC LinuxのS2:3:respawn:/ sbin / uugetty ttyS2 M19200

関連項目

init (8)、 telinit 8)

重要: manコマンド( %man )を使用して、特定のコンピュータでコマンドがどのように使用されているかを確認してください。