歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux啟動流程詳述

Linux啟動流程詳述

日期:2017/2/28 14:26:39   编辑:Linux教程

Linux啟動流程:

power on ---->BIOS加電自檢,根據引導順序啟動---->MBR---->grub(stage2 ) --->/boot/grub/grub.conf ----->加載內核和ramfs文件系統--->init ---->讀取/etc/inittab , 執行/etc/rc.sysinit等腳本文件------>根據/etc/inittab裡的運行級別進入/etc/rc*.d目錄,啟動裡面的服務(s開頭的為要啟動的) ------->啟動登錄程序

Linux系統引導流程簡圖:

BIOS是基本輸入輸出系統(Basic Input Output System)的簡稱,是計算機中最基礎,最重要的程序,存儲在主板上的Flash ROM中。
BIOS加電自檢中會檢查內存、CPU、主板等硬件中是否存在錯誤,出現錯誤後會有兩種處理情況:對於嚴重故障(致命性故障)則停機,此時由於各種初始化操作還沒完成,不能給出然後提示或信號;對於非嚴重故障則給出提示或聲音警報信號,等待用戶處理。引導操作系統:BIOS會先從軟盤或硬盤的開始扇區讀取引導記錄,如果沒有找到,則會在顯示器上顯示沒有引導設備,如果找到就把電腦的控制權交給引導記錄處理。

詳細講解Linux啟動流程及啟動用到的配置文件及腳本 http://www.linuxidc.com/Linux/2013-04/82119.htm

Linux開機啟動過程詳細分析 http://www.linuxidc.com/Linux/2007-11/8701.htm

紅帽Linux啟動流程詳解 http://www.linuxidc.com/Linux/2012-01/50790.htm

-----------------開機進入BIOS,開機第一個畫面都會有提示-------------------
台式機---》del
筆記本--》品牌不同按鍵不一樣,F1、F2、F8、F12等
服務器---》F1

啟動BIOS:固化在主板上的芯片裡
POST(power on self test)系統檢查:檢查核心硬件是否正常
設備初始化:初始化驅動程序,分配資源
引導設備選擇:使用光驅,硬盤還是PXE引導
移交執行區域:加載引導設備的第一個扇區(512字節)
-----------------BIOS介紹--------------------
輸入/輸出系統的簡稱
存儲計算機基本硬件的信息
不可以隨意拔插
--------------BIOS作用-------- -------------
加電自檢
初始化
引導操作系統
------------------------BIOS和CMOS的關系?-----------------------------------------
bios是一個程序,CMOS是一個存數據的芯片,bios啟動會到CMOS裡讀數據。平時我們配置bios的參數的時候,都存在CMOS裡。
CMOS常指保存計算機基本啟動信息(如日期、時間、啟動設置等)的芯片。有時人們會把CMOS和BIOS混稱,其實CMOS是主板上的一
塊可讀寫的RAM芯片,是用來保存BIOS的硬件配置和用戶對某些參數的設定。
------------------計算機裡可以設置哪些密碼?有哪些作用?------------------------
BIOS密碼-->防止別人設置從U盤或者網絡引導進入系統
grub密碼--->防止破密碼
系統的密碼-->防止人家進系統
------------------根據顯示信息排除故障------------------------------------------------
POST信息,包括檢測過程和錯誤提示
計算機啟動時顯示“CMOS battery failed”
主板電池電力不足,需要更換新電池
計算機啟動時顯示“Floppy disk s fail Press F1 to Continue,Del to setup
無法驅動軟驅 ,按F1鍵繼續
根據警報音排除故障
根據警報音識別故障硬件
蜂鳴器長鳴
內存錯誤,清理灰塵,或更換一條插槽

PXE(preboot execute environment)是由Intel公司開發的最新技術,工作於Client/Server的網絡模式,
支持工作站通過網絡從遠端服務器下載映像,並由此支持來自網絡的操作系統的啟動過程,其啟動過程中,
終端要求服務器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file
transfer protocol)協議下載一個啟動軟件包到本機內存中並執行,由這個啟動軟件包完成終端基本軟件設置,
從而引導預先安裝在服務器中的終端操作系統。

MBR(Master Boot Record引導記錄),又叫主引導扇區
引導程序
LILO(淘汰)
GRUB是GNU贊助的項目
引導程序的兩個工作階段
stage1:就是bootloader(MBR裡446字節程序)。第一階段只用來定位裝載第二階段的引導程序,stage1有stage2的地址
stage2:第二階段指引導程序本身,會運行某種應用程序並讀取相應的配置信息,很多的驅動
stage1.5:是stage1和stage2之間的橋梁,由於stage1不能識別文件系統格式,需要Stage1.5來引導位於某個文件系統當中的stage2
/boot目錄下的stage1、stage1.5、stage2都是備份的,防止grub被破壞後,可以拿來修復grub程序
正常的順序是從stage1--->stage2
如果grub被破壞過,啟動順序stage1-->stage1.5--->stage2

-------------解壓image映像文件,查看裡面的內容。------------------------------------
[root@station initramfs]# mkdir /initramfs
[root@station initramfs]# cp /boot/initramfs-2.6.32-279.el6.i686.img /initramfs/
[root@station initramfs]# file initramfs-2.6.32-279.el6.i686.img
initramfs-2.6.32-279.el6.i686.img: gzip compressed data, from Unix, last modified: Fri Mar 1 09:27:07 2013, max compression
[root@station initramfs]# gunzip <initramfs-2.6.32-279.el6.i686.img >inittramfs.img
[root@station initramfs]# cpio -iv <inittramfs.img
[root@station initramfs]# ls
bin dracut-004-283.el6 init initqueue-settled inittramfs.img pre-pivot proc sysroot var
cmdline emergency initqueue initqueue-timeout lib pre-trigger sbin tmp
dev etc initqueue-finished initramfs-2.6.32-279.el6.i686.img mount pre-udev sys usr
[root@station fs]# pwd
/initramfs/lib/modules/2.6.32-279.el6.i686/kernel/fs

內核比喻成皇上,img文件相當於給皇上提供一個住的地方,大臣,部隊等組成一個朝廷
內核裡的驅動不多,所以將img文件加載到內存裡當一個臨時的根文件系統,裡面有很多的驅動,可以驅動其他的重要設備了。
initrd (initial ramdisk)
ramdisk --》虛擬內存盤是通過軟件將一部分內存(RAM)模擬為硬盤來使用的一種技術。
內核裡的驅動不多,所以將img文件加載到內存裡當一個臨時的根文件系統,裡面有很多的驅動,可以驅動其他的重要設備了。

更多詳情見請繼續閱讀下一頁的精彩內容: http://www.linuxidc.com/Linux/2014-10/108440p2.htm

Copyright © Linux教程網 All Rights Reserved