Linux 下分区表的备份与恢复

分区表是磁盘分区的重要信息,一旦损坏磁盘将变得不可用,磁盘数据将会丢失,因此有必要备份磁盘分区表,并在分区表损坏的情况下利用备份信息对分区表进行恢复。

分区表备份

可通过手动或自动的方式对分区表进行备份。自动备份可利用 gdisk 工具,命令如下:

gdisk /dev/<block device>

之后选择 b 备份 GPT 数据到文件,输入文件名即可完成备份。

GPT 分区表位于磁盘的头 35 个扇区(每扇区 512 字节),因此通过 dd 命令将磁盘的头 35 个扇区读取到文件中即可实现 GPT 分区表的备份,命令如下:

dd if=/dev/<block device> of=<back up file name> bs=512 count=35

恢复分区表

无论是自动备份还是手动备份,都可以利用如下的 dd 命令恢复磁盘分区表信息:

dd if=<back up file name> of=/dev/<block device> bs=512
sync

分区表修复

有时候没有磁盘分区表备份文件,又想恢复磁盘分区信息,可利用 GPT 的后备分区表对主分区表进行恢复,gdisk 工具就可以实现该功能。

注:GPT 后备分区表保存在磁盘的结尾,用于备份和恢复主分区表。

gdisk 工具在启动时可自动识别分区表损毁,并提示是否修复,使用如下命令运行 gdisk 工具:

gdisk /dev/<block device>

会提示分区表错误,并询问:是否使用后备分区表进行恢复。选择:“1-Use current GPT”,即使用当前的后备分区表进行恢复,之后使用 p 命令核对分区信息,最后使用 w 命令写入分区信息到磁盘。

gdisk 也支持手动恢复分区表,输入 r 命令进入 experts 模式,之后可使用 b 或 c 命令进行恢复即可(使用 m 命令可查看帮助信息)。

Logo

更多推荐