从正在运行的系统和加密磁盘恢复分区表

从正在运行的系统和加密磁盘恢复分区表

我犯了一个小错误,我错误地删除了启动分区。使用testdisk我能够毫无问题地恢复启动分区,但我要么误用它,要么不理解并且只用我的启动分区写入分区表。
所以现在我的系统中缺少了我的分区/。 我找到了这个swap
伟大的吉尔斯的回答但是,
我的系统使用 EFI 并且我的分区已加密,相同的解决方案是否适用于恢复我的分区表以及我应该对加密分区使用什么分区ext4格式swap

同样在超级用户提出的同一个问题中,我遇到了这样一个事实:我应该使用gdisk扇区大小并减去 1,所有这些信息都是准确且最新的吗?

编辑1:

testdisk通过深度搜索找到这些分区:

Disk /dev/nvme0n1 - 512 GB / 476 GiB - CHS 488386 64 32
     Partition               Start        End    Size in sectors
 P EFI System                  2048    1619967    1617920 [EFI System Partition] [ESP]
 D MS Data                     2054    1619973    1617920 [NO NAME]
 D EFI System                  4096     618495     614400 [EFI System Partition]
 D MS Data                     4102     618501     614400
 D MS Data                    37699      43872       6174
 D MS Data                    43872      50045       6174 [Boot]
 D Linux filesys. data       618494 1000206893  999588400
 D Linux filesys. data       618496     622591       4096
 D Linux filesys. data       618496 1000206895  999588400
 D MS Data                374180459  374183338       2880 [NO NAME]
 D MS Data                374180483  374183362       2880 [NO NAME]
 D MS Data                374181379  374184258       2880 [NO NAME]
>D Linux filesys. data    965039160  965043255       4096

其中 2 个(块大小为 4096 的那个)作为 LUKS。

然而,"bad structue"从这场混乱中,我知道我可以或应该恢复什么。
我的原始磁盘有一个 gpt 启动分区、一个主加密分区和一个加密交换分区。

我的计算机仍然处于打开状态,并且我已经能够备份 LUKS 标头,并且我可以访问所有数据和相关信息,我只是不知道如何利用它。

答案1

最后我用来testdisk解决我已经识别出其他分区的问题:

#main partition
/sys/class/block/nvme0n1p2/start                                                                                                                                                                      
618496
/sys/class/block/nvme0n1p2/size                                                                                                                                                                       
964420664
#Swap partition
/sys/class/block/nvme0n1p3/start                                                                                                                                                                      
965039160
/sys/class/block/nvme0n1p3/size                                                                                                                                                                       
35167740

因此,考虑到这一点,我需要正确识别我的启动驱动器testdisk,它就是这个:

 D EFI System                  4096     618495     614400 [EFI System Partition]

我选择了此选项,并添加了与 中找到的值对应的其他两个分区/sys/class/block
testdisk使用起始扇区和结束扇区而不是起始扇区和计数。因此,要找到结束扇区,您需要添加 comute start+count-1

作为分区类型,我选择linux子类别中的Luks分区。等等瞧。

相关内容