引導過程與服務控制

引導過程與服務控制

引導過程與服務控制

學習內容

  • 引導過程
  • 排除啓動類故障
  • 服務空氣及切換運行級別
  • 優化啓動過程

    系統引導是操作系統運行的開始,在用戶能夠正常登錄到系統之前,Linux 操作系統的
    引導過程將完成一系列的初始化任務,並加載必要的程序和命令終端,爲用戶登錄做好準備。
    本節將對 Linux 操作系統的引導過程做簡單介紹。

    引導過程總覽

    Linux 操作系統的引導過程一般包括以下幾個階段:開機自檢、MBR 引導、GRUB 菜單、加載 Linux 內核、init 進程初始化。
    引導過程與服務控制

    init進程

  • 由Linux內核加載運行 /sbin/init程序
  • 是系統中第一個進程
  • PID(進程標記)號永遠爲1

    Systemd單元類型

單元類型 擴展名 說明
Service .service 描述一個系統服務
Socket .socket 描述一個進程間通信的套接字
Device .device 描述一個內核識別的設備文件
Mount .mount 描述一個文件系統的掛載點
Automount .automount 描述一個文件系統的自動掛載點
Swap .swap 描述一個內存交換設備或交換文件
Path .path 描述一個文件系統中文件或目錄
Timer .timer 描述一個定時器(用於實現類似cron的調度任務)
Snapshot .snapshot 用於保存一個systemd的狀態
Scope .scope 使用systemd的總線接口以編程的方式創建外部進程
Slice .slice 描述居於cgroup的一組通過層次組織的管理系統進程
Target .target 描述一組systemd的單元

運行級別 Systemd的target 說明
0 target 關機狀態,使用該級別時將會關閉主機
1 rescue.target 單用戶模式,不需要密碼驗證即可登錄系統,多用於系統維護
2 multi-usr.target 用於定義/域特定運行級別。默認等同於3
3 multi-usr.target 字符界面的完整多用戶模式,大多數服務器主機運行再次級別
4 multi-usr.target 用於定義/域特定運行級別。默認等同於3
5 graphical.target 圖形界面的多用戶模式,提供了圖形桌面操作環境
6 reboot.target 重新啓動,使用該級別時將會重啓主機

修復MBR扇區故障

  • 故障原因
    • 病毒***等造成的破壞
    • 不正確的分區操作、磁盤讀寫誤操作
  • 故障現象
    • 找不到引導程序,啓動中斷
    • 無法加載操作系統,開機後黑屏
  • 解決思路
    • 應提前作好備份文件
    • 以安裝光盤引導進入急救模式
    • 從本分文件中恢復
      實驗案例

      一、實驗步驟
      1.備份mbr引導扇區到其他磁盤
      2.模擬破壞mbr引導扇區
      3.引導鏡像急救模式進行mbr扇區恢復
      引導過程與服務控制
      此時備份完成。下面進行模擬破壞:
      引導過程與服務控制
      然後重啓:
      引導過程與服務控制
      發現無法重啓,引導代碼消失,繼續重啓,眼疾手快!按esc
      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制
      此時創建新的掛載點,將備份的文件掛載上去。

      恢復成功!

      修復GRUB引導故障

  • 故障原因
    • MBR中的GRUB引導程序遭到破壞
    • grub.conf文件丟失、引導配置有誤
  • 故障現象
    • 系統引導停滯,顯示“grub>”提示符
  • 解決思路
    • 嘗試手動輸入引導命令
    • 進入急救模式,重寫或者從備份中恢復grub.conf
    • 向MRB扇區中重建grub程序

      實驗案例

      grub菜單恢復實驗步驟
      1.引導急救模式,加載系統鏡像
      2.重新建立sda分區
      3.重新構建grub菜單功能配置文件

      注:grub 啓動菜單的背景文件
      grub2 啓動菜單的配置文件

      引導過程與服務控制
      此時模擬破壞:
      引導過程與服務控制
      重啓
      引導過程與服務控制
      同樣還是重啓時及時按esc
      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制
      加載系統鏡像
      引導過程與服務控制
      chroot /mnt/sysimage/
      重新構建sda
      引導過程與服務控制
      grub2-install /dev/sda
      重新構建grub菜單配置文件
      grub2-mkconfig -o /boot/grub2/grub2.cfg
      引導過程與服務控制
      4.退出bash環境 Exit
      5.重啓Reboot
      引導過程與服務控制

遺忘root用戶密碼

  • 故障原因
    • 遺忘root用戶的密碼
  • 故障現象
    • 無法進行需要root權限的管理操作
    • 若沒有其他可用賬號,將無法登錄系統
  • 解決思路
    • 進入急救模式,重設密碼

      實驗案例

  • 破解centos7 root 登錄密碼
    1.加載鏡像系統
    2.修改密碼
    引導過程與服務控制
    輸入密碼
    引導過程與服務控制
    改完之後,重啓:
    引導過程與服務控制
    引導過程與服務控制
    直接登錄即可

    系統服務控制

  • 常用方式:systemctl 控制類型 服務名稱
  • 控制類型:
    srart: 啓動
    stop:停止
    restart:重新啓動
    seload:重新加載
    status:重看服務狀態

    Linux系統的運行級別

  • 查看運行級別

    • Runlevel命令
    • Systemctl工具
  • 臨時切換運行級別
    • Init命令
    • Systemctl工具

      實驗案例

      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制

      在這裏,

      systemctl isolate graphical.target=init5

      systemctl isolate multi-user.target=init3

      引導過程與服務控制
      引導過程與服務控制
      引導過程與服務控制

  • 優化啓動過程

  • 系統服務管理工具
    • Ntsysv工具
    • 提供一個交互式、可視化窗口
    • 可以再字符終端運行
    • 便於集中管理多個服務
  • Systemctl工具
    • 不提供交互式、可視化窗口
    • 管理單個服務效率更高

      系統服務的啓動和控制

  • ntsysv系統服務管理工具
  • ntsysv --level級別列表
    引導過程與服務控制

    查看系統服務的啓動狀態

  • sysemctl is-enabled 服務名稱

    設置系統服務的啓動狀態

  • systemctl enable/disable 服務名稱
    • 按空格取消 按空格開啓

      本章總結

  • Linux操作系統引導過程
  • Linux系統服務控制
  • 運行級別切換
  • 優化開機自動加載服務
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章