修復GRUB引導故障
- 一.修復GRUB引導故障
- 1. 故障原因
- 2. 故障現象
- 3. 解決思路
- 4.修復GRUB引導故障
- 二.修復GRUB引導故障方法1
- ——方法一:手動輸入引導命令(笨拙繁瑣,不建議使用)
- 三.修復GRUB引導故障方法2
- ——方法二:進入急救模式,恢復GRUB引導程式
- ——主引導程式記錄被破壞
- 1.創建磁盤,格式化,掛載,備份檔案
- 2.模擬對MBR中的GRUB引導程式的破壞,不破壞磁區表
- 3.引導界面進入急救模式,從備份檔案中恢復GRUB引導程式
- 四.方法二具體實驗步驟:
- 1.創建磁盤,格式化,掛載,備份檔案
- 2.模擬對MBR中的GRUB引導程式的破壞,不破壞磁區表
- 3.引導界面進入急救模式,從備份檔案中恢復GRUB引導程式
- 五.引導界面進入急救模式,方法3
- 重建GRUB選單組態檔
- ————組態檔丟失、洗掉
- 重新構建GRUB選單的組態檔
- 退出chroot環境,并重啟
- 六.引導界面進入急救模式,方法3實驗步驟
- 重建GRUB選單組態檔實驗
- 重新構建GRUB選單的組態檔
- 退出chroot環境,并重啟
一.修復GRUB引導故障
1. 故障原因
-
MBR中的GRUB弓|導程式遭到破壞
-
grub.conf檔案丟失、引導配置有誤
2. 故障現象
- 系統引導停滯,顯示“grub>" 提示符
3. 解決思路
-
嘗試手動輸入引導命令
-
進入急救模式,重寫或者從備份中恢復grub.conf
-
向MBR扇區中重建grub程式
4.修復GRUB引導故障
/boot/grub/目錄下的包是用于啟動選單的背景圖片及樣式

/boot/grub2/grub. cfg #GRUB組態檔

二.修復GRUB引導故障方法1
——方法一:手動輸入引導命令(笨拙繁瑣,不建議使用)
grub> insmod xfs #加載指定的模塊到內核
grub> linux16 /vmlinuz-3.10.0-693.e17.x86_ 64 root=UUID=8 fd74986-ae66-4ffd-b7d8-al9f2eca7b6f ro rhgb quiet
LANG=zh_ CN. UTF-8 #內核的名字及位置等資訊
grub> initrd16 /initramfs-3.10.0-693.e17.x86_ 64. ing #鏡像系統檔案
grub> boot #引導boot
三.修復GRUB引導故障方法2
——方法二:進入急救模式,恢復GRUB引導程式
——主引導程式記錄被破壞
MBR位于第一 塊硬碟( /dev/sda) 的第一 個物理扇區處,總共512位元組,前446位元組是主引導記錄,磁區表保存在MBR扇區中的第447-510位元組中,
1.創建磁盤,格式化,掛載,備份檔案
①:新建一塊磁盤:fdisk -l
②:fdisk /dev/sdb ### 創建磁盤
n--------P---------…------w
③:mkfs.xfs /dev/sdb1 ### 格式化磁盤
④:mkdir /bak ### 創建bak目錄
⑤:mount /dev/sdb1 /bak ###掛載目錄到磁盤上
⑥:dd if =/dev/sda of=/bak/grub.bak bs=446 count=1 ###備份
硬碟中取檔案,446位元組,提取1次,匯入目錄中的磁盤上
⑦:cd /bak ---------ls --------ll ####查看檔案是否保存完好
2.模擬對MBR中的GRUB引導程式的破壞,不破壞磁區表
①:dd if =dev/zero of=/dev/sda bs=446 count=1
空字符檔案取出,446位元組,提取1次
②:init 6 ### 重啟
3.引導界面進入急救模式,從備份檔案中恢復GRUB引導程式
①:選擇“Trouble shooting"
②:選擇”Rescue a CentOS Linux system"
③:輸入“1”continue Enter
④:進入“sh-4.2#"
sh-4.2# mkdir /backupdir ###創建目錄
sh-4.2# mount /dev/sdb1 /backupdir ### 掛載帶有備份檔案的磁區
sh-4.2# dd if =/backupdir/grup.bak of=/dev/sda ###恢復備份資料
sh-4.2# exit ### 退出
四.方法二具體實驗步驟:
1.創建磁盤,格式化,掛載,備份檔案
①:新建一塊磁盤:fdisk -l


②:fdisk /dev/sdb ### 創建磁盤

③:mkfs.xfs /dev/sdb1 ### 格式化磁盤
④:mkdir /bak ### 創建bak目錄
⑤:mount /dev/sdb1 /bak ###掛載目錄到磁盤上
⑥:dd if =/dev/sda of=/bak/grub.bak bs=446 count=1 ###備份
⑦:cd /bak ---------ls --------ll ####查看檔案是否保存完好

2.模擬對MBR中的GRUB引導程式的破壞,不破壞磁區表
①:dd if =dev/zero of=/dev/sda bs=446 count=1
空字符檔案取出,446位元組,提取1次
②:init 6 ### 重啟

3.引導界面進入急救模式,從備份檔案中恢復GRUB引導程式
①:選擇“Trouble shooting"

②:選擇”Rescue a CentOS Linux system"

③:輸入“1”continue Enter

④:進入“sh-4.2#"

sh-4.2# mkdir /backupdir ###創建目錄
sh-4.2# mount /dev/sdb1 /backupdir ### 掛載帶有備份檔案的磁區
sh-4.2# dd if =/backupdir/grup.bak of=/dev/sda ###恢復備份資料
sh-4.2# exit ### 退出

重啟后,
恢復正常

五.引導界面進入急救模式,方法3
重建GRUB選單組態檔
————組態檔丟失、洗掉
①:cd grub2
cp grub.cfg/opt/ ###備份檔案
②:rm -rf /boot/grub2/grub.cfg ###洗掉grub2檔案
③:init 6### 重啟
④:點擊重啟,讀條完成前按下ESC,選擇CD-ROM Drive
⑤:“trouble shooting"-------"1"continue ---------“sh-4.2#”
###進入急救模式,加載光碟鏡像,切換到系統根環境:
sh-4.2# chroot /mnt/sysimage
###重新將GRUB引導程式安裝到第一塊硬碟(dev/sda)的MBR扇區
bash -4.2# grub2 -install /dev/sda
重新構建GRUB選單的組態檔
bash-4.2# grub2 -mkconfig -o /bootgrub2/grub.cfg
退出chroot環境,并重啟
bash -4.2# exit
sh -4.2# reboot
六.引導界面進入急救模式,方法3實驗步驟
重建GRUB選單組態檔實驗
①:cd grub2
cp grub.cfg/opt/ ###備份檔案
②:rm -rf /boot/grub2/grub.cfg ###洗掉grub2檔案
③:init 6### 重啟

④:點擊重啟,讀條完成前按下ESC,選擇CD-ROM Drive

⑤:“trouble shooting"-------"1"continue ---------“sh-4.2#”

###進入急救模式,加載光碟鏡像,切換到系統根環境:
sh-4.2# chroot /mnt/sysimage
###重新將GRUB引導程式安裝到第一塊硬碟(dev/sda)的MBR扇區
bash -4.2# grub2 -install /dev/sda
重新構建GRUB選單的組態檔
bash-4.2# grub2 -mkconfig -o /bootgrub2/grub.cfg
退出chroot環境,并重啟
bash -4.2# exit
sh -4.2# reboot
重啟后:
恢復正常:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/257379.html
標籤:其他
