天天看點

Centos學習筆記—系統引導

2012-2-13

linux 引導流程

1.固件firmware(cmos,bios)-》post加點自檢

2.自舉程式Bootloader(grub)-》載入核心

3.載入核心                  -》驅動硬體

4.啟動程序init              -》系統啟動的第一個程序

5.讀取執行配置檔案 /etc/inittab

master boot record->MBR主引導扇區 位置:0駐面0磁頭1扇區

插入圖檔:

bootloader中存放的是自舉程式:

windows中為:--》ntldr 以及 boot.ini檔案中的内容

linux中為:  --》/etc/grub.conf

init的工作:

init啟動後讀取inittab檔案,執行預設運作級别而繼續進而引導過程。在unix系統中

,init時第一個可以存在的程序,它的PID恒為1,但他也同時必須向一個更進階的功能負責

:PID為0的核心排程器(kernel scheduler),進而獲得cpu時間

inittab 檔案剖析

在inittab中,所有的條目采取以下格式:

id:run-level:action:process

id:标示符,一般為兩位數字或者字母或者數字

run—level:指定運作級别可以指定多個

action:指定運作狀态

process:指定要運作的腳本/指令

action常用取值:

initdefault:指定系統預設啟動的運作級别

sysinit:系統啟動執行process中的運作級别

wait:執行process中指定的指令,并等起結束再運作其他指令

once:執行process中指定的指令,不等待其結果

ctrlaltdel:按下Ctrl+alt+del時執行process指定的指令

powerfail:當出現電源錯誤時執行process指定的指令,不等待其結束

powerokwait:當電源恢複是執行process指定的指令

respawn:一旦process指定的指令中止,便重新運作該命名

任何的系統級别都會起動系統的啟動腳本:

/etc/rc.d/rc.sysinit        

ls /etc/rc.d/rc3.d 可以看到系統啟動對應級别下需要執行的腳本操作

/etc/rc.d/rc[0123456].d

分别存放對應于運作級别的服務程式腳本的符号連結,連結到init.d目錄中相應的腳本

比如:s12syslog

s—start

k—kill

數字

腳本名稱

啟動流程:插入圖檔: