Linux-Ceentos6系統開機啓動流程簡述以下,後續小節會對重要節點作詳細描述
1:加電自檢 ---> 2:MBR引導系統啓動,至關於GRUB的第一階段 ----> 3: GRUB1.5階段 加載boot文件系統驅動--> 4 :grub 2階段 ,讀取/boot/grub/grub.conf文件 ---> 5: 加載系統內核/boot/vmlinuz內核文件至內存--> 6: 加載/boot/initramfs虛擬文件系統,加載合適的驅動程序,以只讀方式掛載根文件系統 ----> 7:加載根下的第一個進程/sbin/init --> 8:加載系統第一個配置文件/etc/inittab,肯定系統的啓動模式 -->9 加載系統的第一個腳本 /etc/rc.d/rc.sysinit,系統初始化腳本: --> 10 根據系統的啓動模式 ,依據 /etc/rc.d/rc#.d下的文件 依次開啓服務linux
加電自檢:檢測外部硬件是否正常工做,如cpu.內存,顯卡,硬盤,鍵盤,光驅。 此功能主要由主板上內置一塊rom芯片來完成,簡稱bios。在開機啓動時,能夠進入bison內進行相應的設置,如選擇計算機由哪塊設備進行引導,硬盤、光盤、u盤。
MBR一共512字節,存放在硬盤的0扇區0柱面1磁道上。它的主要功能爲引導系統啓動,至關於grub的第一階段,在/boot/grub/stage1內存放的二進制代碼與MBR一致。 MBR能夠肯定此分區是否爲主活動分區,由第一字節所決定,00爲非活動分區80爲活動分區。MBR的後續字節能夠檢測硬盤分區表是否無缺 MBR內存放了三段信息: bootloder:前446字節,引導加載器,引導系統啓動的一段程序。不一樣的系統,引導程序不同。windows:不支持linux啓動。linux:容許用戶選擇要啓動的內核版本,支持windows啓動 64字節:分區表信息 2字節:標識位
grub1.5:加載boot文件系統的驅動文件
grub2.0:此階段的做用是提供選擇菜單(若是有多個內核系統),引導啓動下一步的kernel內核啓動和加載initramfs文件(做用是提供真正根分區的文件系統驅動程序,以便能加載根分區),其配置文件爲/etc/grub.conf
kernel內核階段會把內核文件進行解壓,初始化系統中各設備並作相關的配置工做,其中包括CPU、I/O、存儲設備等。關於Linux的設備驅動程序的加載,有一部分驅動程序直接被編譯進內核鏡像中,另外一部分驅動程序則是以模塊的形式放在initrd(ramdisk)中,加載根文件系統ios
第一個進程:/sbin/initc#
讀取系統第一個配置文件/etc/inittab。肯定系統默認在什麼模式下啓動系統windows
系統初始化腳本:/etc/rc.d/rc.sysinit,此腳本主要完成的內容以下spa
(1)設置主機名code
(2)掛載/etc/fstab文件中定義的文件系統blog
(3)檢測根文件系統,並以讀寫方式從新掛載根文件系統進程
在/boot/initramfs時是以只讀方式掛載根文件系統圖片
(4)設置歡迎信息ip
(5)激活udev和selinux
(6)設置系統時鐘
(7)激活swap設備
(8)根據/etc/sysctl.conf文件設置內核參數
(9)激活lvm及software raid設備
(10)加載額外設備的驅動程序
(11)清理操做
/etc/rc.d/rc#.d/*
讀取此目錄下的文件來 關閉或開啓相關服務
![圖片.png](http://upload-images.jianshu....