Linux中怎样备份、破坏、修复MBR扇区故障

版权声明:如需转载,注明出处。 https://blog.csdn.net/qq_22510521/article/details/76658403



前言:当主引导扇区发生故障时,将可能无法进入引导菜单,或者因无法找到正确的分区位置而无法加载系统,通过该硬盘引导主机时很可能进入黑屏状态。
MBR是什么
每个硬盘都有MBR
Master Boot Record:主引导记录

硬盘的0柱面、0磁头、1扇区称为主引导扇区
 
MBR大小512字节,分为三个部分
主引导程序:446字节
硬盘分区表DPT:64字节
分区结束标记也叫硬盘有效标志 :2字节,固定为55AA
 
实验:
Linux中备份、破坏、修复MBR扇区故障
因为要破坏无法加载系统所以实验前最好的做个快照。因为做实验的时候稍有错误就可能导致无法开机,而且无法修复,所以写此教程,仅供参考。
实验步骤:
备份MBR扇区数据
1.由于MBR扇区中包含了整个硬盘的分区表记录,因此要把MBR备份到其他存储设备中,这里我们就添加另一块硬盘sdb进行备份。
2.在命令提示符下输入以下命令,进行备份操作。

  1. [root@localhost ~]#mkdir /backup  //创建挂载sdb1文件夹
  2. [root@localhost ~]#mount /dev/hsdb1 /backup //把sdb1挂载到backup文件夹下
  3. [root@localhost ~]#dd if=/dev/sdb1 of=/backup/sda.mar.bak bs=512 count=1 //使用dd命令进行备份
复制代码


模拟MBR扇区故障
这里仍然使用dd命令,认为地将MBR扇区记录覆盖。

  1. [root@localhost ~]#dd if=/dev/zero of=/dev/sda bs=512 count=1 //从空设备文件zero中读取512字节的数据,将其覆盖到第一块硬盘(hda),从而破坏MBR扇区中的数据。
复制代码

从备份文件中恢复MBR扇区数据
1.把系统光盘放入光驱,重启Linux系统(此时进不去系统)。系统启动时按“F2”键(一般自动启动光盘系统界面),选择进入Rescue installed system “急救模式”引导光盘中的Linux系统。之后依次按回车键接收默认的语言、键盘格式,提示是否配置网卡是一般选择“NO”,然后系统会自动查找硬盘中的Linux分区并尝试将其挂载到“/mnt/sysimage”目录(选择“Continue”确认并继续)。然后一路ok,最后选择“OK”确认后将进入到带“sh-3.1#”提示符的Bash Shell环境。
2.在提示符下输入以下命令:

  1. [align=left]shsh-3.1# mkdir /sd//创建挂载文件夹
  2. shsh-3.1# mount /dev/sdb1 /sd //挂载带有备份文件的分区
  3. shsh-3.1# dd if=/sd/sda.mbr.bak of=/dev/sda bs=512 count=1 //恢复备份数据[/align][align=left]shsh-3.1# reboot //重启操作系统,完成修复 [/align]
复制代码
此时重新后系统就能正常启动了
PS:可以选择 dd if=/dev/zero of=/dev/sda seek=446 bs=1 count=64 ,来跳过MBR的446字节,然后破坏64字节

猜你喜欢

转载自blog.csdn.net/qq_22510521/article/details/76658403