已删除加密 LUKS Linux 驱动器的 SSD 分区表

已删除加密 LUKS Linux 驱动器的 SSD 分区表

我不小心删除了我的LUKS加密SSD的分区表。我确实使用了 linux 22.04 安装程序附带的加密。然后我总是在启动时直接被要求输入密码。

到目前为止我尝试过的:

使用 testdisk 重新创建分区表:https://linuxconfig.org/how-to-recover-partition-table-in-linux

由于这没有帮助,我按照以下链接中的答案进行操作:

恢复已删除的 LUKS 分区

然后我收到论坛中一位用户的回复,内容如下:

«你没有找到正确的地方,但可能是处理 LUKS 的工具的内容。对整个磁盘(或磁盘副本)重新执行搜索。例如,使用 hexedit(确保无法使用它进行写入)搜索 4c554b53babe0001 (LUKS v1) 或 4c554b53babe0002 (LUKS v2)(可能是最后一个)。

对于 v2,还有 534b554cbabe0002 (SKUL...) 用于在正常之后稍稍进行备份»

所以我搜索了十六进制字符串并找到了它们:

对我来说,这是在 01A175505 (4c554b53babe0002) 和 01A175605 (534b554cbabe0002)

然后我尝试通过上面的链接安装 LUKS 分区,但无法解密该设备。

因此,我按照以下链接中来自用户 Frostschutz 的帖子进行操作。

恢复被 pvcreate 覆盖的 LUKS 分区

第 1 部分没有帮助,而是在命令中收到一条错误消息:

cryptsetup luksDump luksheaderdamage.img

我得到的错误是:

Device luksheaderdamage.img is not a valid LUKS device

所以现在我正在尝试完成第 2 部分,但遇到了问题(如果我理解正确的话,答案会创建一个单独的文件):用分区表覆盖 LUKS

我首先使用以下命令从每个分区复制 64 MB sdasda1sda2

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 字符串。但是我没有得到任何返回值。现在我不知道如何在这里取得进展。

我觉得很有趣的是,驱动器开头有大约 2 MB 的可用空间: 在此输入图像描述

这些分区称为dev/sda dev/sda1dev/sda2

我该如何解决这个问题并挂载磁盘?

相关内容