Linux系统引导修复

1、备份MBR
   # dd if=/dev/sda of=/tmp/mbr512.mbr bs=512 count=1

   16进制查看
    # hexdump -C /tmp/mbr512.mbr

2、破坏boot loader(446字节)
   # dd if=/dev/zero of=/dev/sda bs=446 count=1

3、重启计算机(将光盘卸掉)
   # reboot
   遇到报错:Operating System not found
       可能原因:boot loader被损坏

4、如何修复boot loader? 
  第一种情况:
  进入救援模式
  修复的前提:需要/boot/grub中的文件没有损坏或丢失
  进入到shell环境
  # grub
  grub> root (hd0,0) //指定根文件系统
  grub> setup (hd0)   //重新安装boot loader
  grub> quit
  # reboot

  如果修复成功,就应该能够启动操作系统
第二种情况:/boot/grub中的文件有丢失或损坏
  所需文件来源:/usr/share/grub/x86_64-redhat/

假设/boot/grub/grub.conf丢了
1、破坏grub
   # mv grub.conf grub.conf.bak
2、重启
   # reboot
3、当你看到grub>这样的提示符,那么说明你的grub配置文件丢失或损坏
   grub> root (hd0,0)
   grub> kernel /vmlinuz...【Tab】 ro root=/dev/sda2
   grub> initrd /initramfs...【Tab】
   grub> boot
     手写grub是临时的,不写grub配置文件,那么重启之后还得手写上述步骤。

   系统启动后排查grub.conf是丢失还是坏了

    1)有备份的情况下,可以将备份还原
    2)没有备份,可以远程拷贝 
       # scp 172.16.254.250:/boot/grub/grub.conf /boot/grub/
       接下来修改grub.conf文件的root=UUID那部分,将UUID改为自己设备的UUID,就ok了。

你可能感兴趣的:(Linux基础,日常,运维)