如何修复损坏的(太大)GPT?


1

所以,我有一个新的SSD。我决定使用GPT代替MBR,所以我有点迷失了。它最终被破坏了。我不确定GPT是否考虑到主机保护区,或者我的SSD实际上是否丢失了一些数据。所以,我正试图让它立即安装。问题是我从gparted得到这个错误,分区太大了:

问题:辅助标头的自指针表示它没有   驻留在磁盘的末尾。如果您已将磁盘添加到RAID阵列,   使用专家菜单上的“e”选项调整辅助菜单   标题和分区表的位置。

问题:磁盘太小,无法容纳所有数据! (磁盘大小是   390717734个部门,需要488397168个部门。)'e'选项   专家的菜单可以解决这个问题。

问题:GPT声称磁盘比它大! (最后声明   可用扇区是488397134,但备份标头位于488397167和磁盘   规模是390717734。专家菜单上的'e'选项会   可能解决了这个问题

问题:分区1对于磁盘来说太大了。

确定了4个问题!

(还有一个CRC错误,但我从备份结构中恢复了GPT并且消失了)

我已经尝试过了 e 专家模式中的选项,但只有CRC错误消失了,而不是这些问题。

如何修复此问题以尝试修复FS并使其安装?我有备份,但这意味着我上次做备份后会失去一些工作。

此外,这听起来像数据损坏或类似的东西可能从它产生而不考虑HPA?

Answers:


1

首先,一个小问题:您引用的问题消息来自GPT fdisk( gdisksgdisk, 要么 cgdisk ),而不是来自GParted。我只想澄清一下,以防有人在将来对此感到困惑。

主机保护区(HPA)是一个混乱,因为一些操作系统似乎忽略它,这可能导致您看到的那种错误。如果您使用的是HPA,请考虑禁用该功能。如果这是问题的根源,您几乎肯定需要这样做才能恢复数据,因为您引用的消息清楚地表明您的磁盘的分区远远超出可用空间。如果您使用HPA无知操作系统对磁盘进行分区,或者在设置HPA之前进行了分区,并且随后转移到符合HPA标准的操作系统或设置HPA,则可能会发生这种情况。

由于您的标签表明您正在使用Linux,因此可以使用以下方法检查磁盘的HPA状态 hdparm

$ sudo hdparm -N /dev/sda

/dev/sda:
 max sectors   = 976773168/976773168, HPA is disabled

这显示禁用HPA的磁盘;它会显示启用HPA的其他内容。

您的SSD也可能出现故障。如果是这种情况,您将必须备份尽可能多的数据并将磁盘发回以进行维修或更换。


这是奇怪的事情。在格式化和分区之前,我使用hdparm手动启用了HPA。我还确保可用的扇区是我之前预期的......然后重新启动一次,现在尺寸似乎已经改变了。我不记得尺寸是多少,所以我不确定它是否发生了变化
Earlz

啊,看着hdparm -N,它现在显示最大扇区,因为需要的确切数字......我 知道 我启用了HPA分区,但不知怎的,它没有生效或其他什么
Earlz
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.