系統排錯3:若誤刪grub引導檔案,如何恢復?
阿新 • • 發佈:2018-11-21
系統排錯
若誤刪grub引導檔案,如何恢復?
(1)刪除grub引導檔案但系統並未重啟
1).模擬實驗環境
[[email protected] ~]# cd /boot/grub2
[[email protected] grub2]# ls
device.map fonts grub.cfg grubenv i386-pc locale themes
[[email protected] grub2]# rm -rf grub.cfg
2).解決方案:直接恢復引導檔案即可
##grub2-mkconfig即為grub.cfg檔案的內容
##恢復檔案; > 表示重定向正確輸出
[[email protected] grub2]# grub2-mkconfig > /boot/grub2/grub.cfg
[[email protected] grub2]# ls
device.map fonts grub.cfg grubenv i386-pc locale themes
(2)刪除grub引導檔案並且系統並已經重啟
1).模擬實驗環境
[[email protected] grub2]# pwd
/boot/grub2
[[email protected] grub2]# ls
device.map fonts grub.cfg grubenv i386-pc locale themes
##刪除grub引導檔案
[[email protected] grub2]# rm -rf grub.cfg
[[email protected] grub2]# ls
device.map fonts grubenv i386-pc locale themes
##檢視/boot分割槽
[[email protected] ~]# df -h
##重啟
[[email protected] grub2]# reboot
2)系統重啟後出現以下介面
3)設定開機引導
1.設定系統分割槽
set root=‘hd0,msdos1’
2.掛載根裝置
linux16 /boot/vmlinuz-3.10.0-123.el7.x86_64 ro root=/dev/vda1 (可用Tab鍵補齊)
3.指定初始化映象
initrd16 /boot/initramfs-3.10.0-123.el7.x86_64.img (可用Tab鍵補齊)
4.boot啟動系統
注意:設定開機引導的命令不唯一,分為以下兩種情況
(1)boot分割槽未被獨立出
boot分割槽未被獨立出來:即boot分割槽在/目錄下
第一行:設定系統分割槽
/dev/vda1 # 第一塊虛擬裝置,a表示第一塊
hd0 #第一塊硬碟,0表示第一塊;0與a對應
msdos1 #msdos1中的1與/dev/vda1中的1相對應
第二行:linux16 /boot/vmlinuz......(絕對路徑)
第三行:Initrd16 /boot/initramfs......(絕對路徑)
(2)boot分割槽被獨立出來
第一行 :設定系統分割槽 (同上)
第二行:linux16 /vmlinuz......
第三行:Initrd16 /initramfs.....
注意:以上程式只是開機引導,但並未生成檔案,所以下次開機還得繼續引導
(4)手動恢復引導檔案
##為了避免下次開機再進行引導,故手動恢復引導檔案
[[email protected] grub2]# grub2-mkconfig > /boot/grub2/grub.cfg
[[email protected] grub2]# ls
device.map fonts grub.cfg grubenv i386-pc locale themes
[[email protected] grub2]# reboot
此時系統便恢復正常~