您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Linux操作系統啟動流程是怎么樣的”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Linux操作系統啟動流程是怎么樣的”這篇文章吧。
Linux操作系統啟動流程
02 CentOS 6 啟動流程
1、加載BIOS
當計算機打開電源后,首先是BIOS開機自檢,按照BIOS中設置的啟動設備(通常是硬盤)來啟動。
2、讀取MBR
加載完BIOS信息后,計算機將會查找BIOS所指定的硬盤,讀取該磁盤的MBR存儲記錄信息,引導系統啟動。
3、GRUB引導
選擇啟動的內核/進行單用戶模式重置密碼
4、 加載Kernel
計算機讀取內存映像,當屏幕輸出“OK,booting the kernel”。系統將內核放置在內存中,并調用 start_kernel()函數來啟動一系列的初始化函數并初始化各種設備,完成Linux核心環境的建立。
5、設定系統運行級別
內核加載完畢,將啟動第一個守護進程 init,然后通過讀取該進程讀取/etc/inittab文件,設定inittab運行等級。
Linux 常見運行級別如下: 1、 0:關機模式 2、 1:單用戶模式 3、 2:無網絡支持的多用戶模式 4、 3:字符界面多用戶模式 5、 4:保留,未使用 6、 5:圖形界面多用戶模式 7、 6:重新引導系統,重啟模式
6、 加載rc.sysinit(系統初始化)
讀取完運行級別,系統將執行第一個用戶層文件/etc/rc.d/rc.sysinit,該文件功能包括:設定PATH運行變更、設定網絡配置、啟動swap分區、設定/proc、系統函數、配置SELinux等。
7、加載內核模塊
讀取/etc/modules.conf文件及/etc/modules.d目錄下的文件夾來加載系統內核模塊。該模塊文件,可以后期添加或者修改及刪除。
8、啟動運行級別程序
根據第5步讀取到的運行級別,操作系統會運行rc0.d到rc6.d中相應的腳本程序,來完成相應的初始化工作和啟動相應的服務。
9、讀取 rc.local文件
操作系統啟動完相應服務后,會讀取執行/etc/rc.d/rc.local文件,可以將需要開機啟動的任務加入到該文件末尾,系統會逐行去執行并啟動相應命令。如下圖所示:
10、執行/bin/login程序
執行/bin/login程序,啟動到系統登錄界面,如下圖所示,輸入用戶名、密碼即可登錄Linux操作系統。至此該操作系統完整啟動流程完畢。
03 CentOS 7 啟動流程
CentOS 7 和CentOS 6 啟動流程差不多,只不過到init程序時候,改為了systemd。
CentOS 7 引導順序:
鴻蒙官方戰略合作共建——HarmonyOS技術社區
UEFi或BIOS初始化,運行POST開機自檢
選擇啟動設備
引導裝載程序, centos7是grub2
加載裝載程序的配置文件:/etc/grub.d/、/etc/default/grub、/boot/grub2/grub.cfg
加載內核選項
加載initramfs初始化偽文件系統
內核初始化,centos7使用systemd代替init
執行initrd.target所有單元,包括掛載/etc/fstab
從initramfs根文件系統切換到磁盤根目錄
systemd執行默認target配置,配置文件/etc/systemd/system/default.target
systemd執行sysinit.target初始化系統及basic.target準備操作系統
systemd啟動multi-user.target下的本機與服務器服務
systemd執行multi-user.target下的/etc/rc.d/rc.local
Systemd執行multi-user.target下的getty.target及登錄服務
systemd執行graphical需要的服務
下圖是我在網上看到的,總結很詳細,分享給大家。僅供學習,若存在版權問題,請聯系處理。謝謝
以上是“Linux操作系統啟動流程是怎么樣的”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。