CentOS下的 /etc/inittab 中的英文解釋:
This file describes how the INIT process should set up the system in a certain run-level.The inittab file describes which processes are started at bootup and during normal operation.
通俗的說就是控制Linux啟動(dòng)時(shí)的一些程序及級(jí)別。
run-level的英文解釋:
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
將上面翻譯過來就是:
# 0 - 停機(jī)(千萬不能把initdefault 設(shè)置為0 )
# 1 - 單用戶模式
# 2 - 多用戶,沒有 NFS (沒有網(wǎng)絡(luò))
# 3 - 完全多用戶模式(標(biāo)準(zhǔn)的運(yùn)行級(jí),實(shí)際上就是text模式)
# 4 - 沒有用到
# 5 - X11 (xwindow)
# 6 - 重新啟動(dòng)
在inittab文件里所有的有效語句都遵守如下格式:
id:runlevels:action:process
id: 是標(biāo)識(shí)名,可以任意起名,4個(gè)字符以內(nèi),要注意的是標(biāo)識(shí)名不能重復(fù),它是唯一的。
runlevels: 表示這一行適用于運(yùn)行那些級(jí)別(如上所示的6個(gè)級(jí)別);另外sysinit、boot、bootwait這三個(gè)進(jìn)程會(huì)忽略這個(gè)設(shè)置值。此項(xiàng)可以多選,比如要運(yùn)行1,2,3個(gè)級(jí)別,就寫成123
action: 表示進(jìn)入對(duì)應(yīng)的runlevels時(shí),init應(yīng)該運(yùn)行process字段的命令的方式,常用的字段值及解釋在附錄內(nèi)。
respawn: 表示init應(yīng)該監(jiān)視這個(gè)進(jìn)程,即使其結(jié)束后也應(yīng)該被重新啟動(dòng)。
wait: init應(yīng)該運(yùn)行這個(gè)進(jìn)程一次,并等待其結(jié)束后再進(jìn)行下一步操作。
once: init需要運(yùn)行這個(gè)進(jìn)程一次。
boot: 隨系統(tǒng)啟動(dòng)運(yùn)行,所以runlevel值對(duì)其無效。
bootwait:隨系統(tǒng)啟動(dòng)運(yùn)行,并且init應(yīng)該等待其結(jié)束。
off: 沒有任何意義。
initdefault:系統(tǒng)啟動(dòng)后的默認(rèn)運(yùn)行級(jí)別;由于進(jìn)入相應(yīng)的運(yùn)行級(jí)別會(huì)激活對(duì)應(yīng)級(jí)別的進(jìn)程,所以對(duì)其指定process字段沒有任何意義。如果inittab文件內(nèi)不存在這一條記錄,系統(tǒng)啟動(dòng)時(shí)在控制臺(tái)上詢問進(jìn)入的運(yùn)行級(jí)。
sysinit: 系統(tǒng)啟動(dòng)時(shí)準(zhǔn)備運(yùn)行的命令。比如說,這個(gè)命令將清除/tmp.可以查看/etc/rc.d/rc.sysinit腳本了解其運(yùn)行了那些操作。
powerwait: 允許init在電源被切斷時(shí),關(guān)閉系統(tǒng)。當(dāng)然前提是有U P S和監(jiān)視U P S并通知init電源已被切斷的軟件。RH linux默認(rèn)沒有列出該選項(xiàng)。
powerfail: 同powerwait,但init不會(huì)等待正在運(yùn)行的進(jìn)程結(jié)束。RH linux默認(rèn)沒有列出該選項(xiàng)。
powerokwait:當(dāng)電源監(jiān)視軟件報(bào)告“電源恢復(fù)”時(shí),init要執(zhí)行的操作。
powerfailnow:檢測(cè)到ups電源即將耗盡時(shí),init要執(zhí)行的操作,和powerwait/powerfail不同的喲。
ctrlaltdel:允許init在用戶于控制臺(tái)鍵盤上按下C t r l + A l t + D e l組合鍵時(shí),重新啟動(dòng)系統(tǒng)。注意,如果該系統(tǒng)放在一個(gè)公共場(chǎng)所,系統(tǒng)管理員可將C t r l + A l t + D e l組合鍵配置為別的行為,比如忽略等。我是設(shè)置成打印一句罵人的話了^o^. kbrequest:監(jiān)視到特定的鍵盤組合鍵被按下時(shí)采取的動(dòng)作,現(xiàn)在還不完善。
ondemand: A process marked with an ondemand runlevel will be executed whenever the specified ondemand runlevel is called. However, no runlevel change will occur (ondemand runlevels are ‘a’, ‘b’,and ‘c’)
process: 就是執(zhí)行的程序
舉例:
id:3:initdefault: #表示啟動(dòng)后進(jìn)入命令行模式
x:5:once:/etc/X11/prefdm -nodaemon #表示啟動(dòng)后在xwindow模式下執(zhí)行一次prefdm -nodaemon
實(shí)戰(zhàn)經(jīng)驗(yàn):
如果想開機(jī)直接進(jìn)入“命令行模式”,可編輯 /etc/inittab 文件,設(shè)置為 id:3:initdefault:
如果想直接進(jìn)入“窗口模式”,則設(shè)置為 id:5:initdefault: