自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux操作系統(tǒng)啟動流程

系統(tǒng) Linux
計算機讀取內存映像,當屏幕輸出“OK,booting the kernel”。系統(tǒng)將內核放置在內存中,并調用 start_kernel()函數來啟動一系列的初始化函數并初始化各種設備,完成Linux核心環(huán)境的建立。

[[381474]]

前言

在上一章節(jié),我們學習了與操作系統(tǒng)啟動相關的幾個概念,今天,一起探討操作系統(tǒng)的啟動流程。

注:本文是之前學習Linux時的學習筆記,部分內容參考書籍《曝光:Linux企業(yè)運維實戰(zhàn)》,在此感謝吳光科老師和京峰教育的優(yōu)質教學。

Linux操作系統(tǒng)啟動流程

本文以 CentOS 系列為例,為大家詳解Linux操作系統(tǒng)啟動流程。

02 CentOS 6 啟動流程

  • 1、加載BIOS

當計算機打開電源后,首先是BIOS開機自檢,按照BIOS中設置的啟動設備(通常是硬盤)來啟動。

  • 2、讀取MBR

加載完BIOS信息后,計算機將會查找BIOS所指定的硬盤,讀取該磁盤的MBR存儲記錄信息,引導系統(tǒng)啟動。

  • 3、GRUB引導

選擇啟動的內核/進行單用戶模式重置密碼

  • 4、 加載Kernel

計算機讀取內存映像,當屏幕輸出“OK,booting the kernel”。系統(tǒng)將內核放置在內存中,并調用 start_kernel()函數來啟動一系列的初始化函數并初始化各種設備,完成Linux核心環(huán)境的建立。

  • 5、設定系統(tǒng)運行級別

內核加載完畢,將啟動第一個守護進程 init,然后通過讀取該進程讀取/etc/inittab文件,設定inittab運行等級。

  1. Linux 常見運行級別如下: 
  2. 1、 0:關機模式 
  3. 2、 1:單用戶模式 
  4. 3、 2:無網絡支持的多用戶模式 
  5. 4、 3:字符界面多用戶模式 
  6. 5、 4:保留,未使用 
  7. 6、 5:圖形界面多用戶模式 
  8. 7、 6:重新引導系統(tǒng),重啟模式 
  • 6、 加載rc.sysinit(系統(tǒng)初始化)

讀取完運行級別,系統(tǒng)將執(zhí)行第一個用戶層文件/etc/rc.d/rc.sysinit,該文件功能包括:設定PATH運行變更、設定網絡配置、啟動swap分區(qū)、設定/proc、系統(tǒng)函數、配置SELinux等。

  • 7、加載內核模塊

讀取/etc/modules.conf文件及/etc/modules.d目錄下的文件夾來加載系統(tǒng)內核模塊。該模塊文件,可以后期添加或者修改及刪除。

  • 8、啟動運行級別程序

根據第5步讀取到的運行級別,操作系統(tǒng)會運行rc0.d到rc6.d中相應的腳本程序,來完成相應的初始化工作和啟動相應的服務。

  • 9、讀取 rc.local文件

操作系統(tǒng)啟動完相應服務后,會讀取執(zhí)行/etc/rc.d/rc.local文件,可以將需要開機啟動的任務加入到該文件末尾,系統(tǒng)會逐行去執(zhí)行并啟動相應命令。如下圖所示:

  • 10、執(zhí)行/bin/login程序

執(zhí)行/bin/login程序,啟動到系統(tǒng)登錄界面,如下圖所示,輸入用戶名、密碼即可登錄Linux操作系統(tǒng)。至此該操作系統(tǒng)完整啟動流程完畢。

03 CentOS 7 啟動流程

CentOS 7 和CentOS 6 啟動流程差不多,只不過到init程序時候,改為了systemd。

CentOS 7 引導順序:

  1. UEFi或BIOS初始化,運行POST開機自檢
  2. 選擇啟動設備
  3. 引導裝載程序, centos7是grub2
  4. 加載裝載程序的配置文件:/etc/grub.d/、/etc/default/grub、/boot/grub2/grub.cfg
  5. 加載內核選項
  6. 加載initramfs初始化偽文件系統(tǒng)
  7. 內核初始化,centos7使用systemd代替init
  8. 執(zhí)行initrd.target所有單元,包括掛載/etc/fstab
  9. 從initramfs根文件系統(tǒng)切換到磁盤根目錄
  10. systemd執(zhí)行默認target配置,配置文件/etc/systemd/system/default.target
  11. systemd執(zhí)行sysinit.target初始化系統(tǒng)及basic.target準備操作系統(tǒng)
  12. systemd啟動multi-user.target下的本機與服務器服務
  13. systemd執(zhí)行multi-user.target下的/etc/rc.d/rc.local
  14. Systemd執(zhí)行multi-user.target下的getty.target及登錄服務
  15. systemd執(zhí)行graphical需要的服務

下圖是我在網上看到的,總結很詳細,分享給大家。僅供學習,若存在版權問題,請聯(lián)系處理。謝謝

本文轉載自微信公眾號「開源Linux」,可以通過以下二維碼關注。轉載本文請聯(lián)系開源Linux公眾號。

 

責任編輯:武曉燕 來源: 開源Linux
相關推薦

2010-04-20 17:24:42

Unix操作系統(tǒng)

2010-04-15 18:39:56

Unix操作系統(tǒng)

2009-08-11 09:03:45

Windows 7系統(tǒng)啟動

2017-03-03 09:10:41

2009-11-09 16:01:36

路由器操作系統(tǒng)

2010-03-02 15:45:57

Linux系統(tǒng)啟動過程

2010-03-02 16:13:50

Linux系統(tǒng)啟動過程

2009-12-03 10:00:46

Linux系統(tǒng)啟動

2019-06-20 10:56:28

CentOS系統(tǒng)啟動

2009-12-09 17:25:19

Linux操作系統(tǒng)

2009-02-17 16:07:29

Linux操作系統(tǒng)內核啟動參數

2018-03-13 13:00:03

Linux運維啟動分析

2010-01-12 13:47:18

Linux grub

2018-12-06 09:00:06

LinuxWindows雙系統(tǒng)

2021-09-22 08:51:34

Android

2010-03-02 16:51:59

Linux操作系統(tǒng)

2020-12-29 16:39:01

Linux代碼命令

2010-04-23 16:16:26

IBM AIX

2018-10-18 14:06:15

Linux系統(tǒng)過程

2009-12-14 17:46:40

Linux桌面操作系統(tǒng)
點贊
收藏

51CTO技術棧公眾號