修复损坏的备份 GPT 表?

修复损坏的备份 GPT 表?

成功安装双启动环境后,将 Ubuntu 13.10 添加到预安装的 Windows 8 配置中,在阅读了过度配置的好处后,我决定增加未分配的 SSD 磁盘空间。因此,使用 Windows 中的 miniTools 分区向导,我缩小了 NTFS Windows 分区。这似乎已成功完成。但是,当我启动 Linux 并启动 GParted 时,它在启动时显示以下错误消息:

备份 GPT 表已损坏,但主表似乎正常,因此将会使用它。

系统一切看起来都很好,但我担心如果主 GPT 表由于某种原因损坏,我就会遇到问题。

我已经使用 gdisk 将 GPT 表备份到文件,但是有没有办法创建一个新的备份 GPT 表?

答案1

最好先备份分区表,以防更改不正确。然后可以恢复旧分区表。如果驱动器是 sda 并保存到另一个驱动器:

sudo sfdisk -d /dev/sda > PT_sda.txt

使用磁盘分区并使用 验证分区是否正确p,并使用w写入分区表。如果不正确,只需使用q退出。这应该会更新主、备份和保护 MBR。

sudo gdisk /dev/sda
Command (? for help): 

b 将 GPT 数据备份到文件
c 更改分区的名称
d 删除分区
i 显示分区的详细信息
l 列出已知分区类型
n 添加新分区
o 创建新的空 GUID 分区表 (GPT)
p 打印分区表
q 退出而不保存更改
r 恢复和转换选项(仅限专家)
s 对分区
t 进行排序更改分区的类型代码
v 验证磁盘
w 将表写入磁盘并退出
x 额外功能(仅限专家)
? 打印此菜单

请务必查看下面 Rod Smith 的评论,他是 gdisk 的作者rodbooks 网站

答案2

修复备份 GPT 的最简单方法是:

sgdisk -e <target-device>

例如:

sgdisk -e /dev/sda

作为手册中记录选项-e

-e, --move-second-header:将备份 GPT 数据结构移至磁盘末尾。如果您已将磁盘添加到 RAID 阵列,则可以使用此选项,从而创建一个虚拟磁盘,其空间位于备份 GPT 数据结构之后。此命令将备份 GPT 数据结构移至磁盘末尾,即它们所属的位置。

答案3

不太确定,但当我有两个磁盘作为软件 RAID(MDADM)的一部分时,我收到了此消息。我试图删除此消息时损坏了阵列。我被迫重新创建阵列,但仍然收到此消息。由于阵列可以正常工作,但我仍然收到此消息,所以我将忍受该消息,而不是尝试删除/修复它。

答案4

fdisk /dev/your_device

然后输入“w”并回车。

相关内容