天天看點

第20章 開機流程,子產品管理與Loader

1. Linux的開機流程分析

1.1 開機流程一覽

1. 加載BIOS硬體資訊,并檢測硬體,取得第一個可開機裝置

2. 讀取并執行第一個可開機裝置MBR内的boot  loader

3. 依據boot loader加載kernel, kernel會偵測硬體并加載驅動程式.

4. 在硬體驅動成功後,kernel 會呼叫init程式,init 會取得run level 資訊.

5. inti 執行/etc/rc.d/rc.sysinit檔案來準備軟體運作的環境如網絡,時區等.

6. init 啟動對應的run levle 内的各個服務

7 . init 啟動登陸仿真程式來顯示登陸頁面.

1.2 BIOS,boot loader與kernel的載入

BIOS:檢測硬體,擷取可開機裝置,讀取MBR 執行boot loader

boot loader :呼叫kernel .

kernel:再次檢測硬體,呼叫init程式,并執行init.

1.3 第一支程式init 及配置檔案/etc/inittab與run level

init 程式準備軟體執行的環境,包括系統主機名,語系,網絡環境等

run level: 系統不同的level開啟不同的服務,個等級如下:

0:系統關機

1:單人維護模式

2:無網絡的文本模式

3:有網絡功能的文本模式

4:系統保留

5:X window 的啟動模式

6: 重新啟動

1.4 init 處理系統初始化流程

準備系統,網絡軟體環境.

1.5 啟動系統服務與相關啟動配置檔案

1.6 使用者自定義啟動程式

1.7 開機過程會用到的主要配置檔案

開機過程中會用到的配置檔案大多放置在/etc/sysconfig/目錄下.

1.8 run level的切換

執行 inti [0-6]

2. 核心與核心子產品

2.1 核心子產品與相依性

核心子產品放置目錄:/lib/modules/$(uname -r)/kernel

2.2 核心子產品的觀察

 lsmod :列出系統已經存在的子產品資訊,

2.3 核心子產品的加載與移除

modprobe:先搜尋子產品相依性後才加載子產品.

3. Boot loader: grub

grup 配置檔案: /boot/grub/menu.lst

4. 開機過程的問題解決

4.1 忘記密碼