linux分区表备份和还原

学习手动破坏分区表后,在救援模式下还原分区表,使系统正常启动

1、查看系统所在磁盘的前512字节

系统所在磁盘为/dev/sda

mbr分区前512字节信息说明:

446bytes:boot loader

64bytes:分区表,其中每16byptes标识一个分区

2bytes:55AA

hexdump -C -n 512 /dev/sda

2、备份分区表信息

备份位置应该选择另一块硬盘,或者保存到其他主机上。这样才能在救援模式下挂载可识别的硬盘,或者通过网络从其他主机拷贝备份信息

此处先挂载其他磁盘分区,然后备份分区表到此分区

mount /dev/sdb3 /mnt

dd if=/dev/sda of=/mnt/mbrback bs=1 count=66 skip=446

hexdump -C /mnt/mbrback

3、手动破坏分区表信息

此处只破坏512中分区表64字节

dd if=/dev/zero of=/dev/sda bs=1 count=64 seek=446

hexdump -C -n 512 /dev/sda

 

4、关机,挂载镜像,启动进救援模式

机器重启后分区表被破坏无法进入系统,需要进挂载光盘进救援模式下修复

重启进救援模式

依次选择troubleshooting——rescue a centos system

此处分区表已被破坏,无法识别分区,系统也挂载不上,直接选择3,使用镜像shell

查看分区信息,发现只能识别/dev/sda,无分区信息,进行修复

lsblk

mount /dev/sdb3 /mnt

dd if=/mnt/mbrback of=/dev/sda bs=1 count=66 seek=446 #之前只破坏了64字节,而备份了66字节,此处直接使用66字节全覆盖演示

 

再次查看分区表,sda分区已识别,sync同步,重启正常进系统

lsblk

sync

posted on 2025-05-25 20:48  赛博狗尾草  阅读(119)  评论(0)    收藏  举报

导航