第9章-引導過程和服務控制
一,Linux的引導過程
(1),引導過程總覽
<a href="http://blog.51cto.com/attachment/201305/074918548.jpg" target="_blank"></a>
1,開機自檢
·主機開機以後,将根據主機闆BIOS(Basic Input Output System,基本輸入輸出系統)中的設定對CPU,記憶體,顯示卡,鍵盤等裝置進行初步檢測。
·檢測成功後,根據預設的啟動順序移交系統控制權,大多數時候會移交給硬碟。
2,MBR引導
·當從硬碟中啟動系統時,首先根據硬碟第1個扇區中MBR(Master Boot Record)主引導記錄的位置,将系統控制權傳遞給包含作業系統引導檔案的分區。
·或者直接根據MBR記錄中的引導資訊調用啟動MBR菜單。
3,GRUB菜單
·GRUB算是使用最為廣泛多的系統引導器程式。
·系統控制權遞給GRUB後,将會顯示啟動菜單提供給使用者選擇,并根據所選項加載Linux核心檔案。
4,加載Linux核心
·Linux核心是一個預先編譯好的特殊的二進制檔案,介于各種硬體資源與系統程式之間,負責資源配置設定與排程。
·核心接過系統控制權以後,将完全掌控整個Linux作業系統的運作過程。
5,INIT程序初始化
·Linux核心首先将系統中的“/sbin/init”程式加載到記憶體中運作。
·init程序負責完成一系列的系統初始化過程
①讀取配置檔案“/etc/inittab”
②根據配置内容首先執行初始化腳本檔案“/etc/rc.d/rc.sysinit”
③通過腳本檔案“/etc/rc.d/rc”控制應該啟動哪些程式和服務
④最後運作終端程式“/sbin/mingetty”
⑤等待使用者進行登入“/bin/login”
⑥對程式負責驗證
(2),系統初始化程序及檔案
1,init程序
·/sbin/init:是核心第一個加載的程式,對應的PID号總是為“1”。
·init程序是所有程序的父程序,是以,init程序是不允許被輕易終止的。
2,inittab配置檔案
Inittab檔案位于/etc/目錄中,是init程式的配置檔案
如:x : 5 : respawn : /etc/xll/prefdm -nodaemon
Id : runlevels : action : process
↓↓↓↓
标記運作級别動作類型程式或腳本
【id-标記字段】
#由1-4字元組成,用于差別其他行的配置
#每條配置記錄的id标記應是唯一的,不要出現多個配置記錄使用相同的id
【runlevels-運作級别字段】
0:關機狀态,使用該級别時将會關閉主機。
1:單使用者模式,不需要密碼驗證即可登入系統,多用于系統維戶。
2:字元界面的多使用者模式,不支援通路網絡
3:字元界面的完整多使用者模式,大多數伺服器主機運作在些級别。
4:未配置設定使用。
5:圖形界面的多使用者模式,提供了圖形桌面操作環境。
6:重新啟動,使用該級别時會重新開機主機。
【action-動作類型字段】
Initdefault:設定初始化系統後預設進入的運作級别。
Sysinit:設定系統初始化的操作腳本。
Wait:init程序等待該行配置所對應的腳本操作完成後,在繼續執行其他操作
Ctrlaltdel:設定目前使用者按下ctrl+alt+delete組合鍵後的操作
Powerfail:設定當系統收到斷電信号時采用何種動作
Powerokwait:設定當系統收到恢複供電信号時采取何種動作
Respawn:一旦該行配置所對應的程序補終止,則重新啟動該程序
【process-程式或腳本字段】
3,rc.sysinit腳本檔案
#rc.sysint是init程序所調用的系統初始化腳本,位于/etc/rc.d目錄下
#此腳本程式主要完成:設定網絡、主機名、加載檔案系統、設定時鐘、檢測檔案
4,rc腳本檔案
#rc腳本同樣由init程序進行調用,檔案位于“/etc/rc.d/rc”
#rc腳本通過使用不同的級别參數,分别加載及終不同的系統服務
#/etc/rc.d/rcX.d/目錄中的連結檔案具有以下規律:
·檔案名以K或S開頭,中間是數字序号、最後是系統中的服務腳本名
·連結的原始服務腳本位于:“/etc/rc.d/init.d”目錄中
·“S”表示啟動對應的服務、“K”表示終止對應的服務
5,rc.local腳本檔案
#rc.local腳本是一個額外的啟動控制檔案,位于“/etc/rc.d/rclocal”中
#rc.local腳本用于管理者自行設定開機啟動任務
#在rc.local檔案末尾添加一行“/sbin/hwclocal --hctosys”的執行語句,可以使Linux在每次啟動後根據BIOS中的時鐘自動校對系統時間
二,服務控制及優化啟動過程
(1),系統服務控制
格式:service 服務名稱控制類型
/etc/rc.d/init.d/服務名稱控制類型
控制類型:start/啟動、stop/停止、restart/重新開機、reload/重載、status/檢視
(2),切換運作級别
runlevel /檢視系統的運作級别
init 0-6 /切換系統的運作級别
(3),優化啟運過程
ntsysv --level /打開ntsysv管理程式
chkconfig --level 運作級别服務名稱 on/off /設定系統服務的啟動狀态
chkconfig --list 服務名稱 /檢視指定的系統服務
本文轉自甘兵 51CTO部落格,原文連結:http://blog.51cto.com/ganbing/1195261,如需轉載請自行聯系原作者