我有一个可以在单个硬盘上双启动 Win 10 和 Ubuntu 18.04 的系统,其分区布局如下(或多或少,这就是我记得的): - 主 NTFS,1.5gb 启动 - 主 NTFS,120gb win10 - 主 Linux,100gb Ubuntu,分为 3 个分区:* 扩展 2gb,其中安装了 /boot * 逻辑 20gb,其中安装了 /(OS) * 逻辑 100gb,其中安装了 /home
我需要更多空间用于 Ubuntu 分区,因此我调整了 win10 分区的大小。我不记得是从 Ubuntu 还是 win10 上调整的,但之后 Ubuntu 停止启动。我设法使用 testdisk 修复了它,但 win10 停止启动。现在的情况是,当我使用 testdisk 恢复 win10 分区时,它可以启动,但 Ubuntu 却不能。当我恢复 Ubuntu 分区(也是使用 testdisk)时,它可以启动,但 win10 却不能。
目前我处于“win10 启动但 Ubuntu 不启动”的状态。当我使用 Ubuntu Live CD 启动时,输出如下fdisk -l /dev/sda
:
Disk /dev/sda: 232.9 GiB, 250059350016 bytes, 488397168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x8f76ec72
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 3074047 3072000 1.5G 7 HPFS/NTFS/exFAT
/dev/sda2 3084480 244380779 241296300 115.1G 7 HPFS/NTFS/exFAT
/dev/sda3 244381696 248381439 3999744 1.9G 83 Linux
因此,磁盘起始处的 2 个分区被正确识别,但 3 个 Linux 分区中有 2 个没有被正确识别。
分析testdisk
是:
Disk /dev/sda - 250 GB / 232 GiB - CHS 30401 255 63
Partition Start End Size in sectors
1 * HPFS - NTFS 0 32 33 191 89 26 3072000
2 P HPFS - NTFS 191 89 27 12602 29 35 199378944
3 P Linux 15212 14 35 15461 7 34 3999744
4 E extended LBA 15461 7 35 30401 75 10 240015360
5 L Linux 15461 40 4 17911 157 38 39366656
6 L Linux 19903 134 8 30401 75 10 168646656
因此,它正确识别了 Linux 分区结构,但如果我恢复它,它会弄乱 Windows 分区。请注意,在这种情况下,win10 分区的大小在我缩小之前是这样的(~120gb),但 testdisk 识别的是缩小后的大小(~100gb)
有什么方法可以正确恢复吗?
答案1
我最终又尝试了 testdisk。这次我使用了“深度搜索”选项,得到了大量已删除分区的列表。幸运的是,只有 1 个调整大小的 Win10 分区 + Linux 扩展分区的组合符合我记得的情况前我尝试调整大小。所以我备份了整个驱动器,然后尝试了一下。成功了。