Linux基礎(chǔ)命令之: Linux啟動過程詳解
1.確定用戶登錄模式
在“/etc/inittab”中列出了如下所示的登錄模式,主要有單人維護模式、多用戶無網(wǎng)絡(luò)模式、文字界面多用戶模式、X-Windows多用戶模式等。其中的單人維護模式(runlevel為1)類似于Windows中的“安全模式”,在這種情況下,系統(tǒng)不加載復(fù)雜的模式從而使系統(tǒng)能夠正常啟動。在這些模式中最為常見的是3或5,其中本系統(tǒng)中默認(rèn)的為5,也就是X-Windows多用戶模式。以下是在“/etc/inittab”文件中設(shè)置系統(tǒng)啟動模式的部分。
#Defaultrunlevel.TherunlevelsusedbyRHSare:
#0-halt(DoNOTsetinitdefaulttothis)
#1-Singleusermode
#2-Multiuser,withoutNFS(Thesameas3,ifyoudonothavenetworking)
#3-Fullmultiusermode(文本界面啟動模式)
#4-unused
#5-X11(圖形界面啟動模式)
#6-reboot(DoNOTsetinitdefaulttothis)
#
id:5:initdefault:
2.執(zhí)行/etc/rc.d/rc.sysinit
在確定了登錄模式之后,就要開始將Linux的主機信息讀入系統(tǒng),其過程是通過運行“/etc/rc.d/rc.sysinit”腳本而完成的。查看此文件可以看出,在這里確定了默認(rèn)路徑、主機名稱、“/etc/sysconfig/network”中所記錄的網(wǎng)絡(luò)信息等。以下是在“/etc/inittab”文件中運行該腳本的部分。
#Systeminitialization.
si::sysinit:/etc/rc.d/rc.sysinit
3.加載內(nèi)核的外掛模塊,執(zhí)行各運行級別的腳本以及進入用戶登錄界面
在此,主要是讀取模塊加載配置文件(/etc/modules.conf),以確認(rèn)需要加載哪些模塊。接下來會根據(jù)不同的運行級(runlevel),通過帶參數(shù)(運行級)運行“/etc/rc.d/rc”腳本,加載不同的模塊,啟動系統(tǒng)服務(wù)。init進程會等待(wait)“/etc/rc.d/rc”腳本的返回。系統(tǒng)還需要配置一些異常關(guān)機的處理部分,最后通過“/sbin/mingetty”打開幾個虛擬終端(tty1~tty6),用于用戶登錄。如果運行級為5(圖形界面啟動),則運行xdm程序,給用戶提供xdm圖形界面的登錄方式。如果在本地打開一個虛擬終端,當(dāng)這個終端超時沒有用戶登錄或者太久沒有用戶擊鍵時,該終端會退出執(zhí)行,腳本中的“respawn”即告訴init進程重新打開該終端,否則在經(jīng)過一段時間之后,我們會發(fā)現(xiàn)這個終端消失了,無法利用ALT+Fn切換。
以下是“/etc/inittab”文件中的相應(yīng)部分。
l0:0:wait:/etc/rc.d/rc0
l1:1:wait:/etc/rc.d/rc1
l2:2:wait:/etc/rc.d/rc2
l3:3:wait:/etc/rc.d/rc3
l4:4:wait:/etc/rc.d/rc4
l5:5:wait:/etc/rc.d/rc5
l6:6:wait:/etc/rc.d/rc6
#TrapCTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown-t3-rnow
#WhenourUPStellsuspowerhasfailed,assumewehaveafewminutes
#ofpowerleft.Scheduleashutdownfor2minutesfromnow.
#Thisdoes,ofcourse,assumeyouhavepowerdinstalledandyour
#UPSconnectedandworkingcorrectly.
pf::powerfail:/sbin/shutdown-f-h+2PowerFailure;SystemShuttingDown
#Ifpowerwasrestoredbeforetheshutdownkickedin,cancelit.
pr:12345:powerokwait:/sbin/shutdown-cPowerRestored;ShutdownCancelled
#Rungettysinstandardrunlevels
1:2345:respawn:/sbin/mingettytty1
2:2345:respawn:/sbin/mingettytty2
3:2345:respawn:/sbin/mingettytty3
4:2345:respawn:/sbin/mingettytty4
5:2345:respawn:/sbin/mingettytty5
6:2345:respawn:/sbin/mingettytty6
#Runxdminrunlevel5
x:5:respawn:/etc/X11/prefdm-nodaemon
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關(guān)文章:linux教程
評論