名 前
inittab − sysv-互 換 の initが 使 う inittabフ ァ イ ル の 書 式
概 要
inittabフ ァ イ ル は 、 ブ ー ト ア ッ プ 時 や 通 常 運 転 中 に ど の 様 な プ ロ セ ス を 起 動 す る の か (例 え ば /etc/init.d/boot, /etc/rc, getty等 )を 指 定 す る フ ァ イ ル で あ る 。 init(8) は 複 数 の ラ ン レ ベ ル を 区 別 す る 。 そ れ ぞ れ の ラ ン レ ベ ル に 対 し て 固 有 の プ ロ セ ス 群 を 起 動 す る 事 が で き る 。 ラ ン レ ベ ル と し て 有 効 な も の は 、 0−6と 、 ondemandエ ン ト リ ー と し て の A, B, Cで あ る 。 inittabフ ァ イ ル 中 の エ ン ト リ ー は 次 の 書 式 で 記 さ れ る :
id:runlevels:action:process
’#’ で 始 ま る 行 は 無 視 さ れ る 。
id は |
inittab フ ァ イ ル 中 で エ ン ト リ ー を 識 別 す る た め の 、 1-4文 字 か ら |
な る 固 有 の 識 別 子 で あ る (バ ー ジ ョ ン 5.2.18以 前 の 、 又 は a.outの ラ イ ブ ラ リ で コ ン パ イ ル さ れ た sysvinitで は 2文 字 ま で に 制 限 さ れ て い る ) 。 註 :gettys や 他 の ロ グ イ ン プ ロ セ ス に 対 し て は 、 id欄 と 対 応 す る tty の 添 字 を 同 じ に す べ き で あ る (例 え ば tty1に 対 し て は 1と い う よ う に )。 で な い と 、 ロ グ イ ン の ア カ ウ ン テ ィ ン グ が 正 常 に 動 作 し な い 可 能 性 が あ る 。
runlevels は 、 指 定 し た 動 作 を 行 な う ラ ン レ ベ ル の 一 覧 を 示 す 。
action は ど の よ う な 動 作 を 行 う べ き か を あ ら わ す 。 |
process に は 実 行 さ れ る プ ロ セ ス を 指 定 す る 。 プ ロ セ ス 欄 の 最 初 の 文 字 が ’+’で あ る 場 合 、 init は そ の プ ロ セ ス に 対 し て utmp 及 び wtmp ア カ ウ ン テ ィ ン グ を 行 わ な い 。 こ れ は gettys が 自 分 の utmp/wtmpの 面 倒 を 自 分 で み て し ま う た め に 必 要 と な っ て い る 。 こ れ は 歴 史 上 有 名 な バ グ で も あ る 。
runlevelsに は 異 な っ た ラ ン レ ベ ル を 表 わ す 複 数 の 文 字 を 書 い て も 良 い 。 例 え ば 、 123は ラ ン レ ベ ル 1, 2, 3で そ の プ ロ セ ス を 起 動 す る こ と を 表 わ す 。 ondemandエ ン ト リ ー の た め の runlevelsは A, B, Cの い ず れ か 一 つ の み を 書 く こ と が で き る 。 sysinit、 boot及 び bootwaitエ ン ト リ ー の runlevel欄 は 無 視 さ れ る 。 シ ス テ ム の ラ ン レ ベ ル が 変 更 さ れ た 場 合 は 、 現 在 実 行 中 の プ ロ セ ス の う ち 新 た な ラ ン レ ベ ル に 記 さ れ て い な い も の は 、 先 ず SIGTERM に よ り 、 次 い で SIGKILL シ グ ナ ル に よ り kill さ れ る 。
action
と し て 有 効 な
も の は 次 の 通
り :
respawn プ ロ セ ス が
終 了 し た 場 合
は 常 に 再 起 動
す る (例 え ば getty)
。
wait 指 定 し た ラ ン レ ベ ル に な っ た 時 に 一 度 だ け 起 動 す る 。 |
init は こ の プ ロ |
セ ス が 終 了 す る ま で 待 機 す る 。
once 指 定 し た ラ ン レ ベ ル に な っ た 時 に 一 度 だ け 実 行 す る 。 |
||
boot シ ス テ ム ブ ー ト 中 に 実 行 さ れ る 。 |
runlevels欄
は 無 視 さ れ る
。
bootwait シ ス テ ム ブ
ー ト 中 に 実 行
さ れ る が 、 init
は そ れ が 終 了
す る ま で 待 機
す る (例 え ば
/etc/rc)。 runlevels欄 は 無
視 さ れ る 。
off 何 も し な い 。 |
ondemand
ondemandラ ン レ ベ ル の 印 が 付 い た プ ロ セ ス は 、 指 定 し た ondemandラ ン レ ベ ル に な っ た 時 に 常 に 実 行 さ れ る 。 し か し 、 ラ ン レ ベ ル は 変 化 し な い (ondemandラ ン レ ベ ル と は ’a’, ’b’, ’c’の こ と で あ る )。
initdefault
initdefaultエ ン ト リ ー は 、 シ ス テ ム ブ ー ト 完 了 時 に 入 る べ き ラ ン レ ベ ル を 示 す 。 initdefaultエ ン ト リ ー が 存 在 し な い 場 合 は 、 init は ど の ラ ン レ ベ ル に 入 る べ き か を コ ン ソ ー ル に 問 い 合 わ せ る 。 process欄 は 無 視 さ れ る 。
sysinit シ
ス テ ム ブ ー ト
中 に 実 行 さ れ
る 。 こ の エ ン
ト リ ー は い か
な る boot及 び
bootwaitエ ン ト リ ー
よ り も 先 に 実
行 さ れ る 。
runlevels欄 は 無 視 さ
れ る 。
powerwait 電 源 に 異 常
が 起 き た 時 に
実 行 さ れ る プ
ロ セ ス 。 init は 普
通 コ ン ピ ュ ー
タ と 接 続 さ れ
て い る UPS と 通 信
し て い る プ ロ
セ ス か ら こ の
こ と を 知 ら さ
れ る 。 initは こ
の プ ロ セ ス が
終 了 す る ま で
待 機 す る 。
powerfail
powerwaitと 同 様 だ が 、 initは こ の プ ロ セ ス が 完 了 す る の を 待 た な い と こ ろ が 異 な る 。
powerokwait こ
の プ ロ セ ス は
電 源 が 回 復 し
た こ と を initが
知 っ た 時 に 実
行 さ れ る 。
powerfailnow こ の プ ロ
セ ス は 電 源 に
異 常 が 起 き 、
さ ら に 外 部 UPS の
バ ッ テ リ ー 容
量 が 少 な く な
っ た こ と を (外
部 UPS と 監 視 プ ロ
セ ス が こ の よ
う な 状 態 を 検
出 で き る よ う
に な っ て い る
場 合 に )initが 知
っ た 時 に 実 行
さ れ る 。
ctrlaltdel
initが SIGINTシ グ ナ ル を 受 け 取 っ た と き に 実 行 さ れ る 。 こ れ は 誰 か が シ ス テ ム コ ン ソ ー ル で CTRL−ALT−DELと い う 組 み 合 わ せ で キ ー を 押 し た こ と を 意 味 す る 。 シ ス テ ム を シ ン グ ル ユ ー ザ レ ベ ル に し た い 時 や マ シ ン を リ ブ ー ト し た い 時 な ど 、 shutdown的 な こ と を 行 い た い 場 合 に 実 行 さ れ る 。
kbrequest
initが キ ー ボ ー ド ハ ン ド ラ ー か ら 、 コ ン ソ ー ル キ ー ボ ー ド 上 で 特 定 の 組 み 合 わ せ の キ ー 入 力 が 行 な わ れ た 、 と の シ グ ナ ル を 受 け 取 っ た と き に 実 行 さ れ る 。 こ の 機 能 に 関 す る 文 書 は ま だ 不 完 全 で あ る ; kbd-x.xx パ ッ ケ ー ジ 中 を 探 せ ば よ り 多 く の 資 料 が 見 つ か る だ ろ う (こ の 文 書 を 書 い て い る 時 点 で 最 新 の も の は kbd-0.94 で あ る )。 基 本 的 に は 、 あ る キ ー の 組 み 合 わ せ を "KeyboardSignal"と い う 動 作 に 結 び つ け た い と い う 場 合 に 用 い ら れ る 。 例 え ば 、 Alt-上 向 き 矢 印 と い う キ ー の 組 み 合 わ せ を こ の 用 途 に 使 い た い 場 合 は 、 キ ー マ ッ プ フ ァ イ ル 中 に 次 の 様 に 書 い て お け ば よ い :
alt keycode 103 = KeyboardSignal
例
以 下 は 、 昔 の Linuxで 使 わ れ て い た も の に 似 た inittabの 例 で あ る :
# linux用
の inittab
id:1:initdefault:
rc::bootwait:/etc/rc
1:1:respawn:/etc/getty 9600 tty1
2:1:respawn:/etc/getty 9600 tty2
3:1:respawn:/etc/getty 9600 tty3
4:1:respawn:/etc/getty 9600 tty4 こ
のinittabフ ァ イ ル は
ブ ー ト 中 に
/etc/rcを 実 行 し 、
tty1−tty4で gettyを 起 動
す る 。 次 に 示
す の は 、 異 な
っ た ラ ン レ ベ
ル が あ る 手 の
込 ん だ 例 で あ
る (ス ク リ プ ト
中 の コ メ ン ト
を 参 照 ):
# ブ
ー ト 後 に 入 る
べ き ラ ン レ ベ
ル
id:2:initdefault:
# 何
よ り 先 ず シ ス
テ ム の 初 期 化
を す る 。
si::sysinit:/etc/rc.d/bcheckrc
# ラ
ン レ ベ ル 0及 び
6は そ れ ぞ れ haltと
reboot。
# 1 は メ ン テ ナ ン
ス モ ー ド
l0:0:wait:/etc/rc.d/rc.halt
l1:1:wait:/etc/rc.d/rc.single
l2:2345:wait:/etc/rc.d/rc.multi
l6:6:wait:/etc/rc.d/rc.reboot
#
"三 つ 指 を つ い
て リ セ ッ ト "さ
れ た 時 に 何 を
す べ き か 。
ca::ctrlaltdel:/sbin/shutdown -t5 -rf now
# ラ
ン レ ベ ル 2及 び 3:
コ ン ソ ー ル で
gettyを 実 行 す る
# (レ ベ ル 3の 場 合
は モ デ ム ポ ー
ト で も )。
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
フ ァ イ ル
/etc/inittab
著 者
initは Miquel van Smoorenburg (miquels [AT] drinkel.org)に よ り 作 成 さ れ た 。 こ の man ペ ー ジ は Sebastian Lederer (lederer [AT] francium.de)が 作 成 し Michael Haardt (u31b3hs [AT] pool.de)が 変 更 を 行 っ た 。