首頁 >運維 >CentOS >centos6啟動流程

centos6啟動流程

王林
王林原創
2020-03-31 13:56:583095瀏覽

centos6啟動流程

centos6啟動流程圖:

centos6啟動流程

#1、POST加電自我檢測


載入BIOS的硬體訊息,取得第一個啟動設備。自檢主要是檢測一下硬體設備是否存在並且能正常運作。

例如BIOS會偵測CPU、記憶體以及I/O裝置是否能夠正常運行,如果是個人電腦的話可能還會偵測一下顯示器。只要一通電,CPU就會自動去載入ROM晶片上的BIOS程序,是這樣來實現的。而檢測完成之後進行硬體設備的初始化。

2、MBR開機載入

當第一步自檢硬體沒問題時候,這裡以BIOS為例,BIOS將會直接去找硬碟的第一個磁區,找到前446位元組,將MBR載入到記憶體中,MBR會告訴程式下一階段去哪裡找系統grub引導。

這個階段屬於grub的第一階段。前面的BIOS透過讀取並執行啟動裝置的MBR中的bootloader,而bootloader要實現的功能就是提供一個選單給用戶,讓用戶去選擇要啟動的系統或不同的核心版本,因為一塊硬碟上可能不只一個作業系統.然後把使用者選擇的核心版本載入到RAM中的特定空間,接著在RAM中解壓縮、展開,而後把系統控制權移交給核心。

(推薦教學:

centos教學

3、載入系統核心kernel,執行系統初始化訊息

## #在Bootloader開始讀取作業系統核心檔案時,接下來會將核心檔案解壓縮後裝在到記憶體當中,然後根據核心提供的功能開始載入各個裝置。這裡的各個操作都是由核心來完成的,而我們的核心檔案通常都存放在/boot目錄當中,並且是一個vmlinux開頭的檔案。如下圖所示:###
[root@centos6 ~]# cd /boot
[root@centos6 boot]# pwd
/boot
[root@centos6 boot]# ls
config-2.6.32-696.el6.x86_64           lost+found
efi                                    symvers-2.6.32-696.el6.x86_64.gz
grub                                   System.map-2.6.32-696.el6.x86_64
initramfs-2.6.32-696.el6.x86_64.img    vmlinuz-2.6.32-696.el6.x86_64
initrd-2.6.32-696.el6.x86_64kdump.img
###但是,此時核心程式還沒有載入到磁碟,如何讀取核心檔案呢?如果要先載入磁碟,就要有磁碟驅動程序,而驅動程式又在硬碟上,這樣就陷入了一個無限循環。所以我們要採用一種叫做虛擬檔案系統的東西來解決這個問題。同樣的,這個檔案系統也放在了/boot下,是一個initrd開頭的文件,如上圖所示。 ######Boot Loader可以載入kernel和initrd,然後把initrd解壓成根目錄,然後核心就可以在這個虛擬的根檔案系統上載入驅動程序,之後釋放根檔案系統,最後開始正常的啟動過程。 #########4、啟動init#########對CentOS6來說,init設定檔為:/etc/inittab, /etc/init/*.conf,也就是upstart將設定檔拆分成多個,在/etc/init/目錄下以conf結尾的都是upstart風格的設定文件,而/etc/inittab僅用於設定預設運行等級。運行等級是為了系統運作或維護等目的而設定,分為0-6,共七個等級:###
     0:关机(shutdown);
     1:单用户模式(single user):不需要通过认证,登录进去之后为root用户身份;
     2:多用户模式(multi user):会启动网络功能,但不会启动NFS;
     3:多用户模式(multi user):为完全功能模式,提供文本界面;
     4:预留级别,目前无特别使用目的;
     5:多用户模式(multi user):为完全功能模式,提供图形化界面;
     6:重启(reboot),reboot;
####通常我們使用預設等級3或5,不同等級的頁面是可以切換的,切換方式為:init[0-6],使用runlevel指令來查看目前執行的等級。 #########5、用戶登入#########相關影片教學推薦:###linux影片教學#######

以上是centos6啟動流程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn