Linux_修复GRUB引导故障的3种方法!

修复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/目录下的包是用于启动菜单的背景图片及样式

Linux_修复GRUB引导故障的3种方法!_第1张图片

/boot/grub2/grub. cfg #GRUB配置文件

Linux_修复GRUB引导故障的3种方法!_第2张图片

二.修复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
Linux_修复GRUB引导故障的3种方法!_第3张图片

Linux_修复GRUB引导故障的3种方法!_第4张图片
②:fdisk /dev/sdb ### 创建磁盘
Linux_修复GRUB引导故障的3种方法!_第5张图片
③: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 ####查看文件是否保存完好

Linux_修复GRUB引导故障的3种方法!_第6张图片

2.模拟对MBR中的GRUB引导程序的破坏,不破坏分区表

①:dd if =dev/zero of=/dev/sda bs=446 count=1
空字符文件取出,446字节,提取1次
②:init 6 ### 重启

Linux_修复GRUB引导故障的3种方法!_第7张图片

3.引导界面进入急救模式,从备份文件中恢复GRUB引导程序

①:选择“Trouble shooting"

Linux_修复GRUB引导故障的3种方法!_第8张图片

②:选择”Rescue a CentOS Linux system"
Linux_修复GRUB引导故障的3种方法!_第9张图片

③:输入“1”continue Enter

Linux_修复GRUB引导故障的3种方法!_第10张图片

④:进入“sh-4.2#"

Linux_修复GRUB引导故障的3种方法!_第11张图片

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 ### 退出

Linux_修复GRUB引导故障的3种方法!_第12张图片
重启后,
Linux_修复GRUB引导故障的3种方法!_第13张图片恢复正常
Linux_修复GRUB引导故障的3种方法!_第14张图片

五.引导界面进入急救模式,方法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### 重启
Linux_修复GRUB引导故障的3种方法!_第15张图片
④:点击重启,读条完成前按下ESC,选择CD-ROM Drive
Linux_修复GRUB引导故障的3种方法!_第16张图片
⑤:“trouble shooting"-------"1"continue ---------“sh-4.2#”
Linux_修复GRUB引导故障的3种方法!_第17张图片
###进入急救模式,加载光盘镜像,切换到系统根环境:
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

Linux_修复GRUB引导故障的3种方法!_第18张图片重启后:
Linux_修复GRUB引导故障的3种方法!_第19张图片恢复正常:
Linux_修复GRUB引导故障的3种方法!_第20张图片

你可能感兴趣的:(linux)