inittab

inittab

inittab為linux初始化文件系統時init初始化程序用到的配置文件。文件負責設置init初始化程序。

用途


inittab為linux初始化文件系統時init初始化程序用到的配置文件。這個文件負責設置init初始化程序初始化腳本在哪裡;每個運行級初始化時運行的命令; 開機、關機、重啟對應的命令;各運行級登陸時所運行的命令。

基本格式


id:runlevels:action:process 其中某些部分可以為空,下面我們逐一介紹。

1.id


1~2個字元,配置行的唯一標識,在配置文件中不能重複。

2.runlevel


配置行適用的運行級別,在這裡可填入多個運行級別,比如12345或者35等。
Linux有7個運行級別,如下:
0:關機。
1:單用戶字元界面。
2:不具備網路文件系統(NFS)功能的多用戶字元界面。
3:具有網路功能的多用戶字元界面。
4:保留不用。
5:具有網路功能的圖形用戶界面。
6:重新啟動系統。

3.action


init有如下幾種行為, init行為:
行為描述
respawn啟動並監視第4項指定的process,若process終止則重啟它
wait執行第4項指定的process,並等待它執行完畢
once執行第4項指定的process
boot不論在哪個執行等級,系統啟動時都會運行第4項指定的process
bootwait不論在哪個執行等級,系統啟動時都會運行第4項指定的process,且一直等它執行完備
off關閉任何動作,相當於忽略該配置行
ondemand進入ondemand執行等級時,執行第4項指定的process
initdefault系統啟動後進入的執行等級,該行不需要指定process
sysinit不論在哪個執行等級,系統會在執行boot 及bootwait之前執行第4項指定的process
powerwait當系統的供電不足時執行第4項指定的 process,且一直等它執行完畢
powerokwait當系統的供電恢復正常時執行第4項指定的process,且一直等它執行完畢
powerfailnow當系統的供電嚴重不足時執行第4項指定的process
ctrlaltdel當用戶按下【Ctrl+Alt+Del】時執行的操作
kbrequest當用戶按下特殊的組合鍵時執行第4項指定的process,此組合鍵需在keymaps文件定義

4. proce


所要執行的shell命令。任何合法的shell語法均適用於該欄位。

示例


# Begin /etc/inittab
id:3:initdefault:
si::sysinit:/etc/rc.d/init.d/rc sysinit
l0:0:wait:/etc/rc.d/init.d/rc 0
l1:S1:wait:/etc/rc.d/init.d/rc 1
l2:2:wait:/etc/rc.d/init.d/rc 2
l3:3:wait:/etc/rc.d/init.d/rc 3
l4:4:wait:/etc/rc.d/init.d/rc 4
l5:5:wait:/etc/rc.d/init.d/rc 5
l6:6:wait:/etc/rc.d/init.d/rc 6
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
su:S016:once:/sbin/sulogin
1:2345:respawn:/sbin/agetty tty1 9600
2:2345:respawn:/sbin/agetty tty2 9600
3:2345:respawn:/sbin/agetty tty3 9600
4:2345:respawn:/sbin/agetty tty4 9600
5:2345:respawn:/sbin/agetty tty5 9600
6:2345:respawn:/sbin/agetty tty6 9600
# End /etc/inittab