MBR(Master Boot Record,主引导记录),它的前446字节存放Boot Loader启动管理程序,由Boot Loader去识别、加载操作系统中的核心文件,并向使用者提供不同的启动项目,来加载不同的操作系统。所以,若是我们破坏了MBR,也就意味着没有了引导去加载内核的工具,进而程序无法启动。
一:模拟破坏MBR:直接破坏
即当我们执行dd if=/dev/zero of=/dev/sda bs=1 count=446后,reboot重启虚拟机,会出现如下图所示界面----->我们刚装虚拟机时进入的面安装界,此时倒计时一分钟后会自动进入第一项安装界面,但我们只是去修复MBR,所以直接鼠标点进去,选择第三项救援模式(关于救援模式,我会有一个专门讲它的博客,可供不知道救援模式的童鞋参考)。
1.进入救援模式
2.进入救援模式后,可以先看一下前446字节信息,如下图所示前446字节全是0
3.切根:chroot /mnt/sysimage;因为在救援模式中就给我们说,此时的根不是真实的根,我们真实的根在/mnt/sysimage下,所以,切根后的操作方便一些马虎的童鞋(*_*),然后执行grub-install进行安装修复。
4.再用hexdump查看一下前446字节信息,验证一下grub-install操作
5.通常为了保险起见,我们可以多敲几下sync同步一下。
6.修复完成,重启虚拟机即可(退出救援模式在救援模式博客里有讲)。
二:模拟破坏MBR:破坏前拷贝到另一台虚拟机
- 如下图1所示,可以先看一下没有破坏前的MBR前512字节信息,图2所示在破坏前先拷贝一份,用dd if=/dev/sda of=mbr bs=1 count=446备份到mbr里,可以看到mbr里的内容。图3将备份下的mbr拷贝到另一台虚拟机上。
图1
图2
图3
2.接下来,dd if=/dev/zero of=/dev/sda bs=1 count=446破坏MBR;reboot重启虚拟机
3.看,熟悉的界面出现了,接下来就是进入救援模式了。
4.先查看一下此时/dev/sda的前446字节信息
5.将我们备份到另一台虚拟机上的mbr拷贝回来
6.dd命令修复
7.退出并重启虚拟机即可。