前几天我弄坏了分区表,但用 TestDisk 恢复了。重写分区表后,我能够启动到 GRUB,然后进入输入密码以解密加密分区的界面。
但是输入密码后,出现错误:
Requested offset is beyond real size of device /dev/disk/by-uuid/..."UUID string here".
在输入密码之前,出现以下错误报告:
lvmetad is not active yet, using direct activation during sysinit
Volume group "ubuntu-vg" not found
Cannot process volume group ubuntu-vg
有人能指出我修复此问题的正确方法吗?
答案1
!!! 尝试此操作之前,请对您的硬盘进行完整备份 !!!
我能够通过在 TesDisk 中手动更正分区参数来解决等效问题。
快速搜索首先找到以下内容:
Disk /dev/sdb - 1000 GB / 931 GiB - CHS 121601 255 63
Current partition structure:
Partition Start End Size in sectors
1 P Linux 0 32 33 0 97 33 4096
2 P Linux 63741 45 49 121601 57 56 929521664
第一个分区是我尝试恢复的 LUKS 加密分区。写入此表后,我收到与您相同的错误:“cryptsetup 请求的偏移量超出设备的实际大小”。因此,我再次启动 TesDisk 并按如下方式更改分区表(启动快速搜索 > 立即中止 > 添加分区):
Current partition structure:
Partition Start End Size in sectors
1 P Linux 0 32 33 63741 45 48 1024000000
2 P Linux 63741 45 49 121601 57 56 929521664
注意:我只是将分区的末尾改为下一个分区开始之前的一个扇区,从 0 97 33 改为 63741 45 48。写入此表后,我就能再次打开 LUKS 分区了。