用途
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