grub 是大多數 linux 作業系統預設使用的引導程式,可以通過啟動選單的方式選擇進入不同的作業系統(如果有)。當配置檔案/boot/grub2/grub.cfg 丟失,或者關鍵配置出現錯誤,或者 mbr 中的引導程式遭到破壞時,linux 主機啟動後可能只出現「grub>」的提示符,無法完成進一步的系統啟動過程,如圖所示:
通過 centos 救援模式的 shell 環境重新安裝 grub 引導程式。切換到待修復的 linux 作業系統根環境,執行「grub2-install /dev/sda」命令可以重新將 grub引導程式安裝到第一塊硬碟(sda)的 mrb 扇區,具體操作如下:
sh-4.2# chroot /mnt/sysimage //引導急救模式,載入系統映象
bash-4.2# grub2-install /dev/sda //重新建立載入sda分割槽
bash-4.2# grub2-mkconfig -o /boot/grub2/grub.cfg //重新構建grub選單配置檔案
bash-4.2# exit
sh-4.2# reboot
上述方法同樣適用於在 linux 主機中重灌 windows 作業系統(不覆蓋 linux 作業系統)後導致 linux 作業系統無法啟動的情況。因為對於使用雙作業系統的主機,後安裝的 windows作業系統將使用自己的引導資料覆蓋 mbr 扇區中的記錄,導致開機後不再出現 grub 選單從
而無法進入 linux 作業系統。如果後安裝 linux 作業系統,grub 程式將自動識別硬碟中的windows 作業系統並將其載入到 grub 選單配置中。
注意:執行「dd if=/dev/zero of=/dev/sda bs=446 count=1」命令可以模擬出對 mbr扇區中 grub 引導程式的破壞(注意先做好備份),但並不會破壞分割槽表(實際上分割槽表儲存在 mbr 扇區中的第 447~510 位元組中,mbr 總共 512 位元組,前 446 位元組是主引導記錄,從第
447 位元組開始後的 64 位元組,每 16 位元組為一組,是硬碟分割槽表)。
引導過程與服務控制
單元型別 副檔名說明 service service 描述乙個系統服務 socket socket 描述乙個程序間通訊的套接字 device device 描述乙個核心識別的裝置檔案 mount mount 描述乙個檔案系統的掛載點 automount automount 描述乙個檔案系統的自動掛載...
引導過程與服務控制
二 系統初始化程序 三 systemd單元型別 四 執行級別所對應的systemd目標 五 修復mbr扇區故障 六 修復grub引導故障 七 修復故障的方法 伺服器主機開機以後,將根據主機板bios中的設定對cpu 記憶體 顯示卡 鍵盤等裝置進行初步檢測,檢測成功後根據預設的啟動順序移交系統控制權,...
引導過程與服務控制
二 linux排除啟動類故障 2.1.5 mbr故障及修復的注意事項 2.2 修復grub引導故障 2.3 遺忘root使用者密碼 三 系統服務控制及切換執行級別 3.2 linux系統的執行系統 四 優化系統啟動 由linux核心載入執行 sbin init程式 init程序是系統中第乙個程序 i...