首页 > 代码库 > CentOS 7 修复MBR/GRUB2

CentOS 7 修复MBR/GRUB2

一、修复MBR

MBR(Master Boot Record主引导记录):

硬盘的0柱面、0磁头、1扇区称为主引导扇区。其中446Byte是bootloader,64Byte为Partition table,剩下的2Byte为magic number。

        下面可做试验,真实问题可省略:

        备份MBR:

        #dd if=/dev/sda of=/root/mbr.bak count=5 bs=100

        破坏bootloader:

        #dd if=/dev/zero of=/dev/sda count=5 bs=100

                这里边block size只要<=446即可。

修复方式:

借助安装光盘修复。

        0x01.装入光盘,在光盘引导界面选择troubleshooting:

        0x02.选择进入救援模式:Rescue a Centos system

        0x03.按回车键继续:

        0x04.进入磁盘挂载选择模式(1-4):

                磁盘将会被挂载至/mnt/sysimage/下

                continue 以rw方式挂载分区。

                read only 以ro方式挂载分区。

                skip 跳过,将来自己手工挂载磁盘。

                reboot,就不说了。

 

        0x05.选择1)

 

        0x06.此时进入救援模式的命令行:

            技术分享

        0x07.使用grub2-install命令重建bootloader:

                #grub2-install root-directory=/mnt/sysimage /dev/sda

            技术分享

 

        显示无错误,使用sync写入硬盘,这里一定要同步写入!reboot重启系统。

        0x08.重启后无错误,grub正常运行:

            技术分享

如图,则MBR修复完成。

二、修复grub

如果不能如上图则说明grub配置文件丢失:

        即开机后会直接进入grub界面,显示为grub>:

技术分享

修复步骤如下:

        grub>insmod xfs

        grub>set root=(hd0,1)

                  #如果不知可以find /boot/grub/stage1 来寻找分区号

        grub>linux16 /vmlinuz-xxxxx root=/dev/mapper/centos-root

        grub>initrd16 /initramfs-.xxxxx.img

技术分享

修复完成后即可进入系统,重建配置文件。 

本文出自 “躬耕于黑暗,服务于光明” 博客,请务必保留此出处http://shocking119.blog.51cto.com/12454227/1929439

CentOS 7 修复MBR/GRUB2