Linux的引導(dǎo)流程
1、系統(tǒng)啟動(dòng)的引導(dǎo)流程
首先系統(tǒng)開(kāi)機(jī)自檢,然后是計(jì)算機(jī)開(kāi)機(jī)后訪問(wèn)硬盤(pán)并讀取首個(gè)扇區(qū)的MBR(即主引導(dǎo)目錄),(備注:主引導(dǎo)扇區(qū)內(nèi)部結(jié)構(gòu),其開(kāi)頭的446字節(jié)內(nèi)容特指為“主引導(dǎo)記錄”(MBR),其后是4個(gè)16字節(jié)的“磁盤(pán)分區(qū)表”(DPT),以及2字節(jié)的結(jié)束標(biāo)志(55AA)。主引導(dǎo)扇區(qū)記錄著硬盤(pán)本身的相關(guān)信息以及硬盤(pán)各個(gè)分區(qū)的大小及位置信息,是數(shù)據(jù)信息的重要入口。如果它受到破壞,硬盤(pán)上的基本數(shù)據(jù)結(jié)構(gòu)信息將會(huì)丟失,需要用繁瑣的方式試探性的重建數(shù)據(jù)結(jié)構(gòu)信息后才可能重新訪問(wèn)原先的數(shù)據(jù)。)讀取MBR記錄后,這時(shí)進(jìn)入系統(tǒng)選擇界面,選擇好某個(gè)操作系統(tǒng)后,則開(kāi)始加載內(nèi)核,接著從INIT進(jìn)程獲得系統(tǒng)控制權(quán),即進(jìn)入初始化過(guò)程,之后則讀相應(yīng)的配置文件,具體引導(dǎo)過(guò)程如下:
系統(tǒng)初始化進(jìn)程及文件簡(jiǎn)單介紹
1)、INIT進(jìn)程與配置文件:
INIT進(jìn)程:由Linux內(nèi)核加載運(yùn)行/sbin/init程序,是系統(tǒng)中第一個(gè)進(jìn)程,也是內(nèi)核加載的第一個(gè)程序,PID(進(jìn)程標(biāo)識(shí)符)永遠(yuǎn)是1;配置文件是:/etc/inittab
INIT進(jìn)程啟動(dòng)后會(huì)啟動(dòng)其它程序,生成新的進(jìn)程,這些由init啟動(dòng)的進(jìn)程稱(chēng)之為init進(jìn)程的子進(jìn)程,而init進(jìn)程是這些進(jìn)程的父進(jìn)程
2)、inittab文件結(jié)構(gòu):
查看一下/etc/inittab配置文件的內(nèi)容:
[root@localhost ~]# grep -v "^#" /etc/inittab | grep -v "^$" ==>查看這個(gè)文件時(shí)過(guò)濾掉注釋行和空行 id:5:initdefault: si::sysinit:/etc/rc.d/rc.sysinit l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 ca::ctrlaltdel:/sbin/shutdown -t3 -r now pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down" pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled" 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 x:5:respawn:/etc/X11/prefdm -nodaemon [root@localhost ~]#
各字段的含義:
id |
用于在inittab文件中唯一標(biāo)識(shí)一個(gè)配置記錄 |
runlevels |
用于指定該記錄在哪些運(yùn)行級(jí)別中運(yùn)行 |
action |
用于描述記錄將執(zhí)行哪種類(lèi)型的動(dòng)作 |
process |
用于設(shè)置啟動(dòng)進(jìn)程所執(zhí)行的命令 |
id,也稱(chēng)標(biāo)記字段,由1~4個(gè)字符組成,用以區(qū)別于其他行的配置,所以id標(biāo)記字段必須是唯一的
runlevels,運(yùn)行級(jí)別字段,用于指定該記錄在哪些運(yùn)行級(jí)別中運(yùn)行,取值數(shù)字0~6,后面會(huì)對(duì)其進(jìn)行詳細(xì)解釋
action ,動(dòng)作類(lèi)型字段,動(dòng)作類(lèi)型字段描述了該行配置所對(duì)應(yīng)的操作類(lèi)別,一般為固定值,較常用的類(lèi)型如下:
initdefault:設(shè)置初始化系統(tǒng)后默認(rèn)進(jìn)入的運(yùn)行級(jí)別
sysinit:設(shè)置系統(tǒng)初始化的操作腳本
wait:init進(jìn)程將等待該行配置所對(duì)應(yīng)的腳本操作完成后,再繼續(xù)執(zhí)行其他操作
ctrlaltdel:設(shè)置當(dāng)用戶按下Ctrl+Alt+Delete組合鍵后的操作
powerfail:設(shè)置當(dāng)系統(tǒng)收到斷電信號(hào)(使用不間斷電源)時(shí)采取何種動(dòng)作
powerokwait:設(shè)置當(dāng)系統(tǒng)收到恢復(fù)供電信號(hào)時(shí)采取何種動(dòng)作
respawn:一旦該行配置所對(duì)應(yīng)的進(jìn)程被終止,則重新啟動(dòng)該進(jìn)程
process,程序或腳本字段,此字段用于指定該行配置所對(duì)應(yīng)的實(shí)際操作,可以是具體的命令、腳本程序等
3)、其它系統(tǒng)初始化文件簡(jiǎn)介
/etc/rc.d/rc.sysinit
由init進(jìn)程調(diào)用執(zhí)行
完成設(shè)置網(wǎng)絡(luò)、主機(jī)名、加載文件系統(tǒng)設(shè)置時(shí)鐘等初始化工作(例如檢查并啟用磁盤(pán)配額功能就是在該腳本中完成的)。
/etc/rc.d/rc腳本文件
由init進(jìn)程調(diào)用執(zhí)行
rc腳本通過(guò)指定不同的級(jí)別參數(shù)分別加載及終止不同的系統(tǒng)服務(wù),進(jìn)入到相應(yīng)的系統(tǒng)運(yùn)行級(jí)別。
/etc/rc.local腳本文件
由rc腳本調(diào)用執(zhí)行
rc.local腳本通常由rc腳本在最后進(jìn)行加載,其作用主要是為管理員自行設(shè)置啟動(dòng)命令提供一種途徑,通常都將一些需要隨系統(tǒng)啟動(dòng)的命令和腳本添加到該文件中。(保存用戶定義的需開(kāi)機(jī)后自動(dòng)執(zhí)行的命令)
2、Linux系統(tǒng)的運(yùn)行級(jí)別
1)、運(yùn)行級(jí)別是指運(yùn)行Linux系統(tǒng)的不同模式,每種模式對(duì)應(yīng)不同的服務(wù)程序組合。
默認(rèn)的7種運(yùn)行級(jí)別
0:關(guān)機(jī)狀態(tài)
1:?jiǎn)斡脩裟J?/P>
2:字符界面的多用戶模式(不支持網(wǎng)絡(luò))
3:字符界面的完整多用戶模式
![]() | ![]() .. 定價(jià):¥45 優(yōu)惠價(jià):¥42 更多書(shū)籍 |
![]() | ![]() .. 定價(jià):¥225 優(yōu)惠價(jià):¥213 更多書(shū)籍 |