inittab文件剖析[CentOS 5.X](第二版)
inittab文件剖析[CentOS?5.X]
grep?-v?“^#”?/etc/inittab?|?more #過濾掉以#開頭的行
?
inittab文件格式
id:runlevels:action:process
id: 標識符,一般為兩位數字或字母
runlevels: 運行級別,可以指定多個,若為空,則表示從0~6各個運行級別都執行
action: 指定運行狀態
process: 制定運行的腳本或命令,最重要
?
/etc/inittab正文分析
語句1:
id:5:initdefault:
initdefault:?系統指定缺省啟動的運行級別,系統默認啟動的指令
5: 可以將其改為3默認啟動字符界面,而不用啟動圖形界面
語句2:
si::sysinit:/etc/rc.d/rc.sysinit
/etc/rc.d/rc.sysinit作用:完成系統服務程序的啟動,如:系統環境變量設置,系統時鐘設置,加載字體,檢查加載文件系統,生成系統啟動信息日志等.
sysinit:系統啟動執行process中的指令,無論哪個運行級別,只要系統啟動,這個服務就會啟動
?
附-如果你有一個服務,無論任何運行級別,都希望它在一開機就能自動運行,則可以將之寫入/etc/rc.d/rc.sysinit文件中.
?
語句3:
l3:3:wait:/etc/rc.d/rc?3
/etc/rc.d/rc?
?
作用:根據前文,判斷默認運行級別調用/etc/rc.d/rc腳本,執行下面相應運行級別的目錄中的服務程序,完成相應運行級別的初始化設置。
?
Linux服務保存目錄:/etc/rc.d/rc[0123456].d?
?
分別存放對應于運行級別的服務程序腳本的符號軟鏈接,鏈接到init.d目錄中的相應腳本
S-start: 系統啟動時依次加載這些服務
K-kill?: 系統關機時依次關閉這些服務【如果將文件名更改,則不會啟動】
數字: 表示啟動順序,數字越小,優先啟動
?
?
附-如果不想啟動此服務只需將其改名即可,如:
mv?S03-vmware-tools?s03-vmware-tools #不會自動啟動
?
/etc/inittab文件完整內容介紹
###表示當前缺省運行級別為5(initdefault);id:5:initdefault:###啟動時自動執行/etc/rc.d/rc.sysinit腳本(sysinit)# System initialization.si::sysinit:/etc/rc.d/rc.sysinitl0:0:wait:/etc/rc.d/rc 0l1:1:wait:/etc/rc.d/rc 1l2:2:wait:/etc/rc.d/rc 2l3:3:wait:/etc/rc.d/rc 3l4:4:wait:/etc/rc.d/rc 4###當運行級別為5時,以5為參數運行/etc/rc.d/rc腳本,其他的會忽略,init將等待其返回(wait)l5:5:wait:/etc/rc.d/rc 5l6:6:wait:/etc/rc.d/rc 6###在啟動過程中允許按CTRL-ALT-DELETE重啟系統# Trap CTRL-ALT-DELETEca::ctrlaltdel:/sbin/shutdown -t3 -r now# When our UPS tells us power has failed, assume we have a few minutes# of power left. Schedule a shutdown for 2 minutes from now.# This does, of course, assume you have powerd installed and your# UPS connected and working correctly.pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"# If power was restored before the shutdown kicked in, cancel it.pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"###在2、3、4、5級別上以ttyX為參數執行/sbin/mingetty程序,打開ttyX終端用于用戶登錄,如果進程退出則再次運行mingetty程序(respawn)# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty23:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6###在5級別上運行xdm程序,提供xdm圖形方式登錄界面,并在退出時重新執行(respawn)# Run xdm in runlevel 5x:5:respawn:/etc/X11/prefdm -nodaemon系統相關的腳本,命令與日志
1./etc/rc.d/init.d
該目錄保存了各運行級別的啟動腳本。這樣我們就可以手工啟動/關閉系統中任何一個服務[與/etc/init.d/目錄作用相同,在CentOS?5.x中/etc/init.d只是一個連接文件]
?
如:手動啟動ssh ?/etc/rc.d/init.d/sshd #提示選項信息
?
2.dmesg:查看啟動所有信息,查看硬件是否被內核所識別
dmesg?|?grep?eth0 //?查看加載信息
dmesg?|?grep?sda //?查看第一塊硬盤加載信息
?
3.系統所有的目錄文件都保存在/var/log文件目錄下
?
檢查系統日志/var/log/messages,查找可能被dmesg忽略的應用程序錯誤!
?
設置程序開機自啟動
法1.生成軟鏈接?ln?-s
如: 編寫腳本/etc/rc.d/init.d/msg.sh
data >> /root/msg.today who >> /root/msg.today free >> /root/msg.today
chmod?u+x?/etc/rc.d/init.d/msg.sh
ln?-s?/etc/rc.d/init.d/msg.sh?/etc/rc.d/rc3.d/S100msg.sh
?
?
法2.chkconfig:?只能更改系統默認安裝的服務
chkconfig?--list #查看所有運行級別缺省狀態下所有的啟動程序
chkconfig?--list?sshd #只是顯示sshd的啟動情況?
chkconfig?--levels?2345?sshd?off
?
Chkconfig?其他選項
?
法3、ntsysv
如果敲擊ntsysv則是更改當前運行級別的啟動設置
?
其他運行級別:ntsysv?--?levels?3?
[比較簡單直觀,但是很多UNIX系統并沒有這個服務]
?
action常用取值:
1、 initdefault,sysinit
2、 wait:執行process中指定的命令,并等其結束再運行其他命令?
once:執行process中指定的命令,不等待其結束?
3、 ctrlaltdel:按下Ctrl+Alt+Del時執行process指定?
4、 respawn:一但process指定的命令運行終止,則重新運行該命令
5、 powerfail:當出現電源錯誤時執行process指定的命令,不等待其結束?
powerokwait:當電源恢復時執行process指定的?命令的命令
Linux啟動流程總圖
?
總結
以上是生活随笔為你收集整理的inittab文件剖析[CentOS 5.X](第二版)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: System.Web.HttpExcep
- 下一篇: 让Visual Studio 2005