linux開機流程、模塊管理與Loader(續)

1.init處理系統初始化流程:

1)/etc/rc.d/rc.sysinit這個腳本用來設定系統環境,具體爲:

取得網絡環境與主機類型(讀取/etc/sysconfig/network取得主機名與默認網關等網絡環境)

測試與掛載內存裝置/proc及USB裝置/sys(除了掛載內存裝置/proc外,還會主動偵測系統上是否具有usb的裝置,若有則會註定加載usb的 驅動程序,並嘗試掛載usb的文件系統)

決定是否啓動SELinux

啓動系統的隨機數生成器

設定終端機字形

設定顯示於開機過程中歡迎畫面

接口設備的偵測與PnP(Plug and Play)參數的測試,根據核心在開機時偵測的結果(/proc/sys/kernel/modprobe)開始進行ide/scsi/網絡/音效等接口設備的偵測,以及利用已加載的核心模塊進行PnP裝置的參數測試

用戶自定義模塊的加載,使用者可以在/etc/sysconfig/modules/*.moudles加入自定義的模塊,則此時會被加載到系統當中

加載核心相關的設定,系統會主動去讀取/etc/sysctl.conf這個檔案的設定值,使核心功能成爲我們想要的樣子

設定主機與初始化電源管理模塊(ACPI)

初始化軟件磁盤陣列:主要是透過/etc/mdadm.conf來設定好的

初始化LVM的文件系統功能

以fsck檢驗磁盤文件系統:會進行filesystem check

進行磁盤配額quota的轉換(非必要)

重新以可擦寫模式掛載系統磁盤

啓動quota功能:所以我們不需要自動定義quotaon的動作

啓動系統虛擬隨機生成器

清除開機過程當中的臨時文件

將開機相關信息加載/var/log/dmesg檔案中

2.啓動系統服務與相關配置文件

加載核心讓整個系統準備接受指令來工作,再經過/etc/rc.d/rc.sysinit的系統模塊與相關硬件信息的初始化後,你的CentOS系統應該已經順利工作了。只是,我們還的要啓動系統所需的各項服務,這樣主機才能提供我們相關的網絡或者是主機功能。

3./etc/inittab中的實例:“l5:5:wait:/etc/rc.d/rc 5”解讀:

1)透過外部第一號參數來取得想要執行的腳本目錄。即由/etcrc.d/rc 5可以取得/etc/rc5.d/這個目錄來準備處理相關的腳本程序

2)找到/etc/rc5.d/K??*開頭的檔案,並進行/etc/rc5.d/K??* stop

3)找到/etc/rc5.d/S??*開頭的檔案,並進行/etc/rc5.d/S??* start

/etc/rc5.d/S??*底下實際是一些鏈接檔,鏈到/etc/init.d/目錄下對應的服務程序

4.在完成預設runlevel指定的各項服務啓動後,就會執行/etc/rc.d/rc.local這個檔案用於用戶設定自己想要的開機後執行的程序或服務。

5.在完成了系統所有服務的啓動後,接下來Linux就會啓動終端機或者Xwindow來等待使用者登入。另外在/etc/inittab中“x:5:respawn:/etc/X11/prefdm -nodaemon”這句的意思是當後面的指令被終止(terminal)時,init會主動的重新啓動該項目,這就是爲何我們登入tty1終端接口後,以exit離開後,系統還是會重新等待用戶輸入的原因。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章