45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
# Linux 下分区表的备份与恢复
|
||
|
||
分区表是磁盘分区的重要信息,一旦损坏磁盘将变得不可用,磁盘数据将会丢失,因此有必要备份磁盘分区表,并在分区表损坏的情况下利用备份信息对分区表进行恢复。
|
||
|
||
## 分区表备份
|
||
|
||
可通过手动或自动的方式对分区表进行备份。自动备份可利用 gdisk 工具,命令如下:
|
||
|
||
```bash
|
||
gdisk /dev/<block device>
|
||
```
|
||
|
||
之后选择 b 备份 GPT 数据到文件,输入文件名即可完成备份。
|
||
|
||
GPT 分区表位于磁盘的头 35 个扇区(每扇区 512 字节),因此通过 dd 命令将磁盘的头 35 个扇区读取到文件中即可实现 GPT 分区表的备份,命令如下:
|
||
|
||
```bash
|
||
dd if=/dev/<block device> of=<back up file name> bs=512 count=35
|
||
```
|
||
|
||
## 恢复分区表
|
||
|
||
无论是自动备份还是手动备份,都可以利用如下的 dd 命令恢复磁盘分区表信息:
|
||
|
||
```bash
|
||
dd if=<back up file name> of=/dev/<block device> bs=512
|
||
sync
|
||
```
|
||
|
||
## 分区表修复
|
||
|
||
有时候没有磁盘分区表备份文件,又想恢复磁盘分区信息,可利用 GPT 的后备分区表对主分区表进行恢复,gdisk 工具就可以实现该功能。
|
||
|
||
*注:GPT 后备分区表保存在磁盘的结尾,用于备份和恢复主分区表。*
|
||
|
||
gdisk 工具在启动时可自动识别分区表损毁,并提示是否修复,使用如下命令运行 gdisk 工具:
|
||
|
||
```bash
|
||
gdisk /dev/<block device>
|
||
```
|
||
|
||
会提示分区表错误,并询问:是否使用后备分区表进行恢复。选择:“1-Use current GPT”,即使用当前的后备分区表进行恢复,之后使用 p 命令核对分区信息,最后使用 w 命令写入分区信息到磁盘。
|
||
|
||
gdisk 也支持手动恢复分区表,输入 r 命令进入 experts 模式,之后可使用 b 或 c 命令进行恢复即可(使用 m 命令可查看帮助信息)。
|