我不小心删除了我的LUKS加密SSD的分区表。我确实使用了 linux 22.04 安装程序附带的加密。然后我总是在启动时直接被要求输入密码。
到目前为止我尝试过的:
使用 testdisk 重新创建分区表:https://linuxconfig.org/how-to-recover-partition-table-in-linux
由于这没有帮助,我按照以下链接中的答案进行操作:
然后我收到论坛中一位用户的回复,内容如下:
«你没有找到正确的地方,但可能是处理 LUKS 的工具的内容。对整个磁盘(或磁盘副本)重新执行搜索。例如,使用 hexedit(确保无法使用它进行写入)搜索 4c554b53babe0001 (LUKS v1) 或 4c554b53babe0002 (LUKS v2)(可能是最后一个)。
对于 v2,还有 534b554cbabe0002 (SKUL...) 用于在正常之后稍稍进行备份»
所以我搜索了十六进制字符串并找到了它们:
对我来说,这是在 01A175505 (4c554b53babe0002) 和 01A175605 (534b554cbabe0002)
然后我尝试通过上面的链接安装 LUKS 分区,但无法解密该设备。
因此,我按照以下链接中来自用户 Frostschutz 的帖子进行操作。
第 1 部分没有帮助,而是在命令中收到一条错误消息:
cryptsetup luksDump luksheaderdamage.img
我得到的错误是:
Device luksheaderdamage.img is not a valid LUKS device
所以现在我正在尝试完成第 2 部分,但遇到了问题(如果我理解正确的话,答案会创建一个单独的文件):用分区表覆盖 LUKS
我首先使用以下命令从每个分区复制 64 MB sda
:sda1
sda2
sudo head -c 64M /dev/sda > luksheaderdamage.img
然后我使用了以下命令:
stdbuf -oL strings -n 64 -t d disk.img | grep '"keyslots":'
我还尝试使用以下命令从每个分区复制超过 64 MB:
sudo head -c 2000M /dev/sda > luksheaderdamage.img
此命令应返回 JSON 字符串。但是我没有得到任何返回值。现在我不知道如何在这里取得进展。
这些分区称为dev/sda
dev/sda1
和dev/sda2
我该如何解决这个问题并挂载磁盘?