Linux系統管理(二):Linux系統啓動流程

Linux系統啓動流程html


從11月底報名馬哥的Linux培訓班,12月初真正開始學習,已通過去一個多月的時間了,從學習Linux的發展史開始、跟着學習命令行、文件系統掛載與管理、目錄、Bash Shell的基本特性等等,Linux真的是博大精深,今天以CentOS 5,CentOS 6的啓動過程進行一下簡單的總結。因爲才疏學淺,知識所限,有些地方分析不妥之處還請各位高手不吝賜教。linux


系統啓動過程主要通過如下幾個流程:小程序

POST》BootSequence(BIOS)》Bootloader(MBR)》Kernel(Ramdisk)》Rootfs(只讀)》INITbash

wKioL1aZsRDAbDVyAADbSFgTmo0947.png

經過上述流程大概的瞭解了Linux從按下電源器開始,到用戶登陸界面的整個流程,接下來咱們再補充幾個比較重要的概念,它們是啓動過程中不可或缺的部分:網絡

啓動第三步:Boot loaderide


Boot Loader 就是在操做系統內核運行以前運行的一段小程序。經過這段小程序,咱們能夠初始化硬件設備、創建內存空間的映射圖,從而將系統的軟硬件環境帶到一個合適的狀態,以便爲最終調用操做系統內核作好一切準備。
系統讀取內存中的grub配置信息(通常爲menu.lst或grub.lst),並依照此配置信息來啓動不一樣的操做系統。學習


啓動第五步:
1)Linux的運行級別(用戶層init依據inittab文件設置運行級別)ui

功能:它是爲了系統的運行或維護等應用目的而設定的:
0-6:7個級別
0 : 關機
1 : 單用戶模式式(root,無需登陸),single,維護模式
2 : 多用戶模式,會啓動網絡功能,但不會啓動NFS:維護模式
3 : 多用戶模式,正常模式,文本界面
4 : 預留級別,功能跟級別3同樣,經過不使用
5 : 多用戶模式,正常模式,圖形界面
6 : 重啓
默認級別
3,5
切換級別
init # (#表明對應的級別號)
查看級別
[root@jimjimlv ~]# runlevel
 N 5
 [root@jimjimlv ~]# who -r
          run-level 5  2016-01-15 17:07

2)不一樣運行級別的腳本程序
系統會運行rc0.d到rc6.d中的相應的腳本程序,來完成相應的初始化工做和啓動相應的服務
存儲位置
spa

[root@jimjimlv ~]# ls /etc/rc.d/
init.d  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d  rc.local

3)執行/etc/rc.d/rc.sysinit: 系統初始化腳本
操作系統

(1)設置主機名
(2)設置歡迎信息
(3)激活udev和selinux
(4)掛載/etc/fstab文件中定義的文件系統
(5)檢測根文件系統,並以讀寫方式從新掛載根文件系統
(6)設置系統時鐘
(7)激活swap設備
(8)根據/etc/sysctl.conf文件設置內核參數
(9)激活lvm及software raid設備
(10)加載額外設備的驅動程序
(11)清理操做

它的整個流程爲:/sbin/init --> (/etc/inittab)-->設置默認運行級別-->運行系統初始腳本,完成系統初始化-->>關閉對應下須要關閉的服務,啓動須要啓動服務-->設置登陸終端


以上總結只是描述Linux在啓動過程當中涉及的幾大模塊,每一個大模塊下還有不少的小模塊,如下附上一張不錯的Linux系統啓動流程圖:

wKioL1aZyT_Dw9GbAAfCUuisI8M353.jpg

參考文獻:
http://blog.chinaunix.net/uid-23069658-id-3142047.html
http://blog.itpub.net/8111049/viewspace-680043

http://blog.chinaunix.net/uid-26495963-id-3066282.html

http://baike.baidu.com/subview/9485/9079238.htm 

相關文章
相關標籤/搜索