破坏64个字节表修复
第一步:备份数据
dd if=/dev/sda of=/app/mbr/ bs=1 count=512
说明:dd if=/dev/sda 从第1块磁盘读数据 生成到/app/mbr文件中 bs=1读1块,1块1个字节, count=512 读512字节, 总共512字节,放到了/app/mbr文件中。
第二步:破坏分区表
dd if=/dev/zero of=/dev/sda bs=1 count=64 seek=446 skip=664
可以用命令hexdump -C -n /dev/sda -v 看出分区表64字节为0
lsblk命令看的是内存中的分区情况,内存中的东西是存不住的,机器重启就会丢,
fdisk -l /dev/sda 看磁盘a上的分区情况。
分区表破坏机器就起不来了。在本机器备份的数据就找不到了,所以要把备份的数据拷贝到其他机器上
[root@centos6 app]# scp /app/mbr/ 192.168.27.130:/app/
第三步:重启reboot , 救援模式修复
除了救援模式还有一种方法:把本机破坏的硬盘拆了,把备份到的mbr机器上接到破坏的机器,该机器就识别了一块硬盘了。把分区表恢复过去。
救援模式修复方法;当重启机器快速左手按Esc ,右手按鼠标左键。
1:按光盘启动 Cdrom
2:按Rescue Iinstalled system 救援
3:一路按ok 按ok 网络也是OK 用eth0网卡,用网络 dhcp 获得ip地址
4:Linux字样不要按OK 按回车 把数据拷贝到当前目录
#scp 192.168.27.130:/app/mbr .
#dd if=mbr of=/dev/sda bs=1 count=64 skip=446 seek=446
5;恢复完毕,重启exit reboot reboot