Linux系統啟動流程簡圖

Linux系統啟動流程簡圖

CentOS 系統啟動流程:

POST 加電自檢   外部硬件是否都能存在和是否能正常工作
ROM:COMS 芯片上的
BIOS 基本輸入輸出

BOOT Sequence:  

引導加載次序,也就磁盤上的MBR,bootloader

按次序查找各引導設備,第一人有引導程序的設備即為本次啟動用到的設備。

bootloaderr:引導加載器,程序
windows: ntloader
linux:
LILO:用于小型存儲設備上,如手機
GRUB:用于桌面環境
GRUB 0.x:傳統版本,5,6上在用
GRUB 1.x:7

功能:提供一個菜單,允許用戶選擇要啟動系統或不同的內核版本,把用戶選定的內核裝載到內在中的特定空間中,解壓、展開、并把系統控制權移交給內核。從此BIOS終止。

GRUB:

bootloader: 1st stage   找到硬盤上的第二階段
  1.5st  : 就是用來加載文件系統驅動 ?。阋L問文件系統,但是文件系統又在硬件分區上) 在你安裝操作系統時,就匹配好了一個1.5的文件放在mbr后面的扇區,讓bootloader能夠識別并訪問這個文件驅動。
disk : 2nd stage  

MBR:
446:bootloader
64: 分驅信息
2: 55AA 標記位

kernel:

第一次掛載根的時候,內核不確定是否安全,它會以只讀的方式來掛載根,等一切如init等進程啟動完成后,在次重新以讀寫的方式掛載根。

自身初始化:
探測可識別到的所有硬件設備
加載硬件驅動程序:(有可能會借助于ramdisk加載驅動)
以只讀方式掛載根文件系統,
運行/sbin/init   用戶空間的第一個應用程序

init程序的類型:
SysV: init   5以前都用的,所有用戶進程都是按順序的開啟,所以啟動很慢,b會等a啟動完成之后在啟動
配置文件:/etc/inittab

Upstart: 接近并行的方式來啟動,如果b依賴a,只要a一啟動,b就認為依賴問題解決了,就可以啟動了
配置文件:/etc/inittab , /etc/init/*.conf 
Systemd:需要啟動很多腳本服務,只有你第一次去訪問時,它才會去啟動它,所以開機很快,
配置文件:/usr/lib/systemd/system,/etc/systemd/system

ramdisk:
在啟動時,要加載根文件系統,根文件所在的設備,內核可能無法訪問,所以這時候我要借助ramdisk的輔助來完成,我們所需要的依賴的驅動程序的加載,而一但能夠加載這個驅動程序,就能掛載真正的根了。切換根。

內核的特性之一:使用緩沖和緩存來對磁盤上的文件訪問。

ramdisk  —> ramfs
 centos5:initrd 工具程序:mkinitrd
 centos6:initramfs 工具程序:dracut  

centos 5 :/sbin/init –> (/etc/inittab) | (CentOS6:/etc/init/*.conf) –> 設置默認運行級別 –> 運行系統初始化腳本、完成系統初始化 –> 關閉對應下需要關閉的服務,啟動需要啟動服務 –> 設置登錄終端
 

原創文章,作者:dance_man,如若轉載,請注明出處:http://www.www58058.com/75409

(0)
dance_mandance_man
上一篇 2017-05-13
下一篇 2017-05-13

相關推薦

  • Python 課堂筆記

    第二天

    Linux干貨 2018-03-21
  • 第三周作業

    1、列出1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。[root@localhost ~]# who | cut -d ‘ ‘ -f1 | sort -u 2、取出最后登錄到當前系統的用戶的相關信息。[root@localhost ~]# who | tail -1 | export &am…

    Linux干貨 2017-12-16
  • zabbix如何監控webserver

    1、模版 2、應用集 3、項目 4、觸發器

    Linux干貨 2016-02-19
  • linux 3.26 第一課

    setup app

    2018-03-26
  • 多網卡實驗

    1、虛擬網卡實現一個網卡多個地址     網卡別名多用于虛擬機,可理解為一塊網卡MAC地址對應多個IP地址,這樣比較方便管理,在不需要通過添加網卡的形式就可以使用到新的IP 在此圖可看到     eth1     eth1:100   &n…

    Linux干貨 2016-09-06
  • vim簡單總結

    編輯器種類 常用的文本編輯器有: 行編輯器,如sed,awk,cut等 全屏編輯器,如vi,vim(vi增強版),nano等 vim的模式 命令模式:使用vim filename打開文件后,進入的第一個模式。 直接使用鍵盤操作文本的編輯 插入模式:INSERT模式 進入:i,從當前光標處開始 進入:I,從當前行行首開始 末行模式:vim內置命令接口。 以:開…

    Linux干貨 2016-08-18
欧美性久久久久