MBR,boot loader, partition table, backup, recovery, clean 硬盘引导记录,分区表备份,恢复,清空

linux/unix系统的分区表结构位于硬盘开始的MBR上。MBR上大小为512bytes。

MBR=446B启动信息+64B分区表+2B分隔符=512字节

前面的446bytes作为启动信息,启动信息跟分区表相关。启动信息会告诉BIOS在启动的时候,按照启动信息去找分区表里面的相关分区加载文件。

在如果修改的分区表结构不影响启动信息的分区的情况下(比如,启动分区没有做修改,只是修改增加改动了其他非启动信息的分区表结构在64B的分区表里面),则不会影响用户启动系统。

 

 

备份

所以,如果用户想备份mbr的话,可以这样

dd if=/dev/sda /path/to/mbr bs=512 count=1

然后,我们想单独备份mbr中的引导结构可以这样

dd if=/dev/sda /path/to/bootstrap bs=446 count=1

我们像单独备份mbr中的分区表结构可以这样

dd if=/dev/sda /path/to/partition_table bs=512 skip=446 count=66

上面的 bs=512 skip=446 count=66 是为了略过446个字节,定位其后的66个字节,用来保存到文件 /path/to/partition_table 里。

 

恢复

用户想整体恢复mbr

dd if=/path/to/mbr of=/dev/sda bs=512 count=1

用户只想恢复引导记录信息

dd if=/path/to/mbr of=/dev/sda bs=446 count=1

用户只想恢复分区表结构

dd if=/path/to/mbr of=/dev/sda bs=512 skip=446 count=66

 

清空

清空整个mbr

dd if=/dev/zero of=/dev/sda bs=512 count=1

 

只清空引导记录

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

 

只清空分区表

dd if=/dev/zero of=/dev/sda bs=512 skip=446 count=66 # 66 还是64 由用户本身需求而定,由于mbr最后2个字节是用来做分隔符的。当在保存的mbr 为512 位(含有最后2位分隔符)的时候,建议count=66

 

 

分区表,启动项硬盘工具

1、cfdisk

命令行下,可视化的选择工具

2、fdisk

命令行下,略显专业的硬盘工具

3、gparted

带UI的分区工具,鼠标操作

等等一些工具有很多很多

posted @ 2014-07-18 00:57  spaceship9  阅读(592)  评论(0编辑  收藏  举报