gdisk,对损坏的 GPT 表进行非永久性修复

gdisk,对损坏的 GPT 表进行非永久性修复

我的笔记本电脑无法启动。因此,我从可启动 USB 实时运行 Ubuntu 18.04。它不会自动挂载/dev/sda使用 GPT 的500 GB 硬盘。

lsblk仅显示磁盘,不显示分区;fdisk相反能够向他们展示。

gdisk显示与中相同的错误这一页(“半自动恢复”部分):

# gdisk /dev/sda
GPT fdisk (gdisk) version 0.7.2

Warning! Main partition table CRC mismatch! Loaded backup partition table
instead of main partition table!

然后,链接页面显示“手动恢复过程”部分中的选项列表recovery/transformation command,指定:

您可以尝试刚才描述的所有选项(w 除外);任何数据恢复工具都不会立即写入磁盘。

我不明白在进行永久修改之前如何验证这些选项是否有效。

有了gdisk,是否可以暂时使用backup partition table,让 Ubuntu 挂载/dev/sda磁盘分区,然后在 Ubuntu 关闭时保持磁盘不变?

答案1

您不需要操作系统来识别该分区。您可以(尝试)以适当的偏移安装整个设备。例如,如果您怀疑(或者任何工具告诉您)分区是从扇区开始的2048(对于 512 字节逻辑扇区来说这是一个非常常见的值),那么请尝试:

sudo mount -o ro,offset=$((2048*512)) /dev/sda /some/mountpoint

ro以防万一;没有它就会这样-o offset=$((2048*512)))。如果它安装并且内容看起来正常,则起始扇区是正确的。

256它可以是4096字节逻辑扇区的扇区号。注意$((256*4096))$((2048*512))是相同的数字。

如果任何工具告诉您从扇区开始14649344,您可以使用offset=$((14649344*512))(假设 512 字节扇区)。

微软曾经喜欢从63(我猜是因为 CHS 中每磁道 63 个扇区的共同值)开始,但这是在 GPT 之前。如果您需要猜测 XP 时代的 Windows 的C:\启动位置,请尝试offset=$((63*512)).


你说fdisk能够显示一些合理的分区结构。这应该是您的起点。

如果fdisk没有帮助,testdisk将是下一个要运行的工具。我相信它可以搜索丢失的分区并显示其起始扇区,而无需更改驱动器。这应该会给你尝试的补偿。

相关内容