引導程序與服務控制
- 引導程序
- 開機自檢(BIOS)
- MBR引導
- GRUB選單
- 加載內核(Kernel)
- init行程初始化
- systemd單元型別
引導程序
- CentOS7系統中,由systemd掌管系統的初始化作業,系統的啟動程序與之前的版本相比有了新的變化

開機自檢(BIOS)
- 服務器主機開機以后,將根據主板BIOS(Basic Input/Output System,基本輸入輸出系統)中的設定對CPU,記憶體,顯卡,鍵盤等設備進行初步檢測,并初始化部分硬體(加電自檢)
- 檢測成功后根據預設的啟動順序移交系統控制權,大多數時候會移交給本機硬碟(加載部分驅動)
- 自檢程序中可以根據主機的POST資訊進入配置,通常按某一組合鍵進入,常用F2或者Delete
MBR引導
- 當從本機硬碟中啟動系統時,首先根據硬碟的第一個扇區中MBR(Master Boot Record,主引導記錄)的設定,將系統控制權傳遞給包含作業系統引導檔案的磁區
- 或者直接根據MBR記錄中的引導資訊呼叫啟動選單(CentOS7中為grub2)
- 若安裝雙系統,則兩個系統需要分別安裝在不同的盤符當中
GRUB選單
- 對于Linux系統來說,GRUB算是使用最廣泛的多系統引導器程式
- 系統控制權傳遞給GRUB以后,將會顯示啟動選單提供給用戶選擇,并根據所選項(或采用默認值)加載Linux內核檔案,然后將系統控制權轉交給內核
加載內核(Kernel)
- 系統引導器程式會從本地硬碟中加載內核以及記憶體檔案系統(CentOS 7 中使用initramfs)
- Linux內核是一個預先編譯好的特殊二進制檔案,介于各種硬體資源與系統程式之間,負責資源分配與調度
- 內核接過系統控制權以后,將完全掌控整個Linux作業系統的運行程序
- 記憶體檔案系統initramfs 是經過gzip 的cpio歸檔,其中包含啟動時所有必要的硬體內核模塊,初始化腳本等,
- 內核放在/boot目錄下,/boot目錄相當于Windows的system32
init行程初始化
- 加載硬體驅動以及初始化行程(加載全部驅動)
- 由Linux內核加載運行/sbin/init程式
- 是系統中第一個行程
- PID(行程標記)號永遠為1
- 內核初始化在initramfs中找到驅動程式的所有硬體,然后作為PID1從initramfs執行/sbin/init,CentOS 7中將其復制為systemd,systemd啟動initrd.target中所有單元,并掛載根檔案系統/sysroot,內核與檔案系統由記憶體檔案系統切換至系統根檔案系統,并重新運行/sysroot.systemd,
- systemd啟動默認target(圖形或者字符終端),最后等待用戶進行登錄
systemd單元型別
-
在systemd中不同型別的systemd物件被統一稱為單元,是讓系統知道該如何進行操作和管理資源的主要物件,所以systemd有許多單元型別
-
systemd單元檔案最初默認存放在/lib/systemd/system目錄中,每當安裝新的軟體都會自動在這個目錄中添加一個組態檔
-
systemctl 命令用于管理各種型別的systemd單元,可以使用“systemctl -t help”命令來查詢systemd支持的單元型別
Systemd 單元型別
| 單元型別 | 擴展名 | 說明 |
|---|---|---|
| Service | .service | 描述一個系統服務 |
| Socket | .socket | 描述一個行程間通信的套接字(通信協議的載體) |
| Device | .device | 描述一個內核識別的設備檔案 |
| Mount | .mount | 描述一個檔案系統的掛載點 |
| Automount | .automount | 描述一個檔案系統的自動掛載點 |
| Swap | .swap | 描述一個記憶體交換設備或目錄 |
| Timer | .timer | 描述一個定時器(用于實作類似cron的調度任務) |
| Path | .path | 描述一個檔案系統中檔案或目錄(path 路徑) |
| Snapshot | .snapshot | 用于保存一個systemd的狀態(snapshot 快照) |
| Scope | .scope | 使用systemd的總線介面以編程的方式創建外部行程 |
| Slice | .slice | 描述居于Cgroup的一組通過層次組織的管理系統行程 |
| Target | .target | 描述一組systemd的單元(target 目標) |
- Init運行級別所對應的Systemd目標
| init運行級別 | Systemd 的 target | 說明 |
|---|---|---|
| 0 | target | 關機狀態,使用該級別時會關閉主機 |
| 1 | rescue.target | 單用戶模式,不需要密碼驗證即可登錄系統,多用于系統維護 |
| 2 | multi-user.target | 用戶定義/域特定運行級別,默認等同于3 |
| 3 | multi-user.target | 字符界面的完整用戶模式,大多數服務器主機運行在此級別 |
| 4 | multi-user.target | 用戶定義/域特定運行級別,默認等同于3 |
| 5 | graphical.target | 圖形界面的多用戶模式,提供了圖形桌面操作環境 |
| 6 | reboot.target | 重新啟動,使用該級別時將會重啟主機 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/187185.html
標籤:其他
