亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
907
2022-05-29
linux 系統的啟動,從計算機開機通電自檢開始,一直到登陸系統,需要經歷多個過程。學習 Linux 的啟動過程,有助于了解 Linux 系統的結構,也對系統的排錯有很大的幫助。
CentOS 6.x 系統啟動過程發生了較大的變化,使用 Upstart 啟動服務取代了原先的 System V init 啟動服務。Upstart 啟動服務的效率更高,啟動速度更快。
Linux 系統啟動過程比較復雜,我們先整理一下基本的啟動過程,有一個整體的印象,然后再進一步說明。
目前,CentOS 6.x 的啟動流程經歷以下幾步:
服務器加電,加載 BIOS 信息,BIOS 進行系統檢測。依照 BIOS 設定,找到第一個可以啟動的設備(一般是硬盤);
讀取第一個啟動設備的 MBR (主引導記錄),加載 MBR 中的 Boot Loader(啟動引導程序,最為常見的是 GRUB)。
依據 Boot Loader 的設置加載內核,內核會再進行一遍系統檢測。系統一般會采用內核檢測硬件的信息,而不一定采用 Bios 的自檢信息。內核在檢測硬件的同時,還會通過加載動態模塊的形式加載硬件的驅動。
內核啟動系統的第一個進程,也就是 /sbin/init。
由 /sbin/init 進程調用 /etc/init/rcS.conf 配置文件,通過這個配置文件調用 /etc/rc.d/rc.sysinit 配置文件。而 /etc/rc.d/rc.sysinit 配置文件是用來進行系統初始化的,主要用于配置計算機的初始環境。
還是通過 /etc/init/rcS.conf 配置文件調用 /etc/inittab 配置文件。通過 /etc/inittab 配置文件來確定系統的默認運行級別。
確定默認運行級別后,調用 /etc/init/rc.conf 配置文件。
通過 /etc/init/rc.conf 配置文件調用并執行 /etc/rc.d/rc 腳本,并傳入運行級別參數。
/etc/rc.d/rc 確定傳入的運行級別,然后運行相應的運行級別目錄 /etc/rc[0-6].d/ 中的腳本。
/etc/rc[0-6].d/ 目錄中的腳本依據設定好的優先級依次啟動和關閉。
最后執行 /etc/rc.d/rc.local 中的程序。
如果是字符界面啟動,就可以看到登錄界面了。如果是圖形界面啟動,就會調用相應的 X Window 接口。
總的來說,Linux 系統的啟動,要經歷BIOS自檢 -> 啟動 GRUB -> 加載內核 -> 執行第一個進程 -> 配置系統初始環境。當然,本節僅是簡單地看啟動過程,接下來分別詳解介紹每步啟動過程。
Linux
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。