centos7系統啟動流程


centos7系統啟動流程:

1.uefi或BIOS初始化,開始post(power on self test)開機自檢

開機前硬件檢查

這個過程是開機后,BIOS或UEFI進行硬件檢查的階段,檢查內存,硬盤,CPU等硬件信息。

2. 加載MBR到內存

加載磁盤主引導記錄到內存

自檢硬件沒有問題時候,這里以BIOS為例,BIOS將會直接找硬盤的第一個扇區,找到前446字節,將MBR加載到內存中,MBR將告訴程序下一階段去哪里找系統的grub引導。此階段屬於grub第一階段。grub還有1.5階段和2階段。

  • MBR概述:全稱為Master Boot Record,即硬盤的主引導記錄;是位於磁盤最前邊的一段引導(Loader)代碼。它負責磁盤操作系統(DOS)對磁盤進行讀寫時分區合法性的判別、分區引導信息的定位,它由磁盤操作系統(DOS)在對硬盤進行初始化時產生的。
    1.主引導程序即主引導記錄(MBR)(占446個字節)
    可在FDISK程序中找到,它用於硬盤啟動時將系統控制轉給用戶指定的並在分區表中登記了的某個操作系統。
    2.磁盤分區表項(DPT,Disk Partition Table)
    由四個分區表項構成(每個16個字節)。
    負責說明磁盤上的分區情況,其內容由磁盤介質及用戶在使用FDISK定義分區時決定。(具體內容略)
    3.結束標志(占2個字節)(魔數)
    其值為AA55,存儲時低位在前,高位在后,即看上去是55AA(十六進制)。

3. GRUB階段

grub引導階段

grub第1.5和第2階段,信息默認存放在扇區中,如果使用grub-install生成的第2階段的文件是存放在/boot分區中的。

為了加載內核系統,不得不加載/boot分區,而加載/boot分區,要有/boot分區的驅動,/boot分區驅動是放在/boot分區中的啊,我們好像進入死循環了,Linux是怎么解決的呢?就是靠放在1.5階段中的數據,放在第一個扇區后的后續扇區中,第1.5階段和2階段總共27個扇區。

第1.5階段:mbr之后的扇區,識別stage2所在的分區上的文件系統。

第2階段:開機啟動的時候看到Grub選項、信息,還有修改GRUB背景等功能都是stage2提供的,stage2會去讀入/boot/grub/grub.conf或者menu.lst等配置文件。

4. 加載內核和initramfs

引導內核階段

加載內核,核心開始解壓,啟動一些最核心的程序。

為了讓內核足夠的輕小,硬件驅動並沒放在內核文件里面。

kernel內核開始初始化,用systemd來代替centos6以前的init程序
先執行initrd.target
包括掛載/etc/fstab文件中系統,掛載之后,就可以切換到根目錄了。

從initramfs根文件系統切換到磁盤的根目錄
systemd執行默認target配置
centos7表面有“運行級別”這個概念,實際是為了兼容以前的系統,每個所謂“運行級別”都有對應的軟連接指向,默認的啟動級別/etc/systemd/system/default.target,根據它的指向可以找到系統要進入到哪個模式。

模式:

0 ==> runlevel0.target, poweroff.target
1 ==> runlevel1.target, rescue.target
2 ==> runlevel2.target, multi-user.target
3 ==> runlevel3.target, multi-user.target
4 ==> runlevel4.target, multi-user.target
5 ==> runlevel5.target, graphical.target
6 ==> runlevel6.target, reboot.target

5. systemd階段

systemd階段開啟服務

systemd執行sysinit.target
systemd啟動multi-user.target下的本機與服務器服務
systemd執行multi-user.target下面的/etc/rc.d/rc.local
Systemd執行multi-user.target下的getty.target及登錄服務
getty.target我們也眼熟,它是啟動終端的systemd對象。如果到此步驟,系統沒有指定啟動圖形桌面,到此就可以結束了,如果需要啟動圖形界面,要在此基礎上啟動桌面程序。

systemd執行graphical圖形化需要的服務
至此系統啟動完成,可以正常使用。

centos7 開機流程圖

圖片來源:https://www.cnblogs.com/diantong/p/10745372.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM