1. 程式人生 > >十九、系統排錯實驗(上)

十九、系統排錯實驗(上)

本文講解Linux系統排錯的一些實驗,先看看實驗機環境

  • 實驗環境

    在這裡插入圖片描述 在這裡插入圖片描述

破壞主引導分割槽

  • 覆蓋 主引導分割槽

    [[email protected] ~] # fdisk -l                  # 檢視硬碟當前分割槽情況
    [[email protected] ~] # dd if=/dev/zero of=/dev/sda bs=446 count=1      # 覆蓋主載入程式,重啟
    [[email protected] ~] # reboot                    # 重啟
    

    在這裡插入圖片描述 更改為光碟啟動,進入挽救模式,更改設定 在這裡插入圖片描述 在這裡插入圖片描述 更改根目錄到 /mnt/sysimage,要挽救誰就進入他系統真實的根目錄

    在這裡插入圖片描述 在這裡插入圖片描述 在這裡插入圖片描述 調整為從硬碟啟動,則該實驗成功完成

grub.conf 引導檔案丟失

grub是多作業系統啟動程式,用於選擇作業系統分割槽上的不同核心,也可用於向核心傳參

  • 未重啟時

    [[email protected] ~] # grub2-mkconfig > /boot/grub2/grub.cfg
    
  • 重啟後需要手動引導 boot 分割槽獨立,則 set root 將根目錄指定到 boot 所在分割槽,即文章開頭 fdisk -l 下 * 所在的裝置 在這裡插入圖片描述 啟動後建立系統引導檔案 grub.conf 在這裡插入圖片描述

核心vmlinuz檔案丟失

光碟啟動,挽救模式,掛載光碟,拷貝 kernel 包中的 vmlinuz 核心檔案,改回硬碟啟動

  • 文字過程

    #光碟啟動 → troubleshooting → rescue... → continue
    chroot /mnt/sysimage/                              # 修改根目錄
    mount /dev/sr0 /mnt/                               # 掛載光碟,為了找kernel包
    cp /mnt/Packages/kernel-xxxx.rpm /westos           # 拷貝kernel包到/wesots
    cd /westos                                         # 進入/westos目錄
    rpm2cpio kernel-xxxx.rpm | cpio -id                # 提取kernel包中的檔案到當前目錄
    cp boot/vmlinuz-xxxx /boot/                        # 拷貝提取出的boot目錄中的的vmlinuz核心檔案
    #改回硬碟啟動
    
  • 實驗過程 在這裡插入圖片描述 光碟啟動,進入挽救模式 在這裡插入圖片描述 在這裡插入圖片描述 在這裡插入圖片描述 在這裡插入圖片描述 下節介紹映象檔案丟失、引導分割槽丟失、啟動級別錯誤的相關排錯過程