Linux的啟動流程如下:
1.計算機加載BISO,它其中一項很重要的功能是對自身的健康進行檢查,只有在硬件沒有問題的情況下,才會運行軟件,這種方式叫作‘Power On SelfTest’ (加電自檢),簡稱POST,如果所有的硬件都自檢通過,就會發出滴的短聲提示,說明硬件正常。
2.加載引導系統,這個動作是BIOS設定的,BISO默認會從硬盤上的第0柱面、第0磁道、第一個扇區中讀取被稱為MBR的東西,即主引導記錄。一個扇區的大小是512個字節,存放的內容是一段引導程序和分區信息,其中引導程序部分在用446個字節,另外64字節是磁盤分區表DPT,最后兩個字節是MBR的結束位。由于RedHat、Centos默認會使用Grub作為其引導操作系統的程序,而Grub本身又比較大,所以常見的方式是在MBR中寫入Grub的地址,這樣系統實際會載入Grub作為操作系統的引導程序。
3.運行Grub,Grub最重要的功能就是根據其配置文件加載kernel鏡像,并運行內核加載后的第一個程序/sbin/init。這個程序會根據/etc/inittab來進行初始化工作。
4.linux將根據/etc/inittab中定義的系統初始化配置si::sysinit:/etc/rc.d/rc.sysinit執行/etc/rc.sysinit腳本,該腳本將會設置系統變量、網絡配置,并啟動swap、設定/proc、加載用戶自定義模塊、加載內核設置等。
5.根據第三步讀到的runlevel值來啟動對應的服務,如果值為3,就會運行/etc/rc3.d/下所有的腳本,如果值是5,就會運行/etc/rc5.d/下所有腳本。
6.將運行/etc/rc.local
7.生成終端或X window界面。