升级到最新内核版本 22.04 后,我的笔记本电脑在启动过程中卡住了。系统提示我输入 LUKS 密码,但随后无法挂载加密文件系统。加密分区包含一个 LVM 系统,其中包含两个分区(根和交换文件系统)。
第一个 22.04 内核确实可以工作,我可以通过选择较旧的内核来启动我的系统,但是在上次更新之后,这个较旧的内核版本消失了,我的系统无法运行。
细节
我的加密分区是/dev/nvme0n1p3
。
运行后,cryptsetup luksOpen /dev/nvme0n1p3 nvme0n1p3_crypt
我/dev/mapper/nvme0n1p3_crypt
正确获得了该设备。当我尝试直接安装它时,它失败了(invalid agument
)。这可能是因为它是一个 LVM 卷。
lvmdiskscan
当我从救援系统启动时,我可以通过调用、vgscan
和来正确安装卷lvscan
。这表明数据仍然存在。
我尝试将加密密钥更改为 LUKS2,但没有用。我不知道如何解决这个问题。任何帮助都值得感激。
祝好,托马斯
其他想法:
是硬件问题吗?
- 可能不行,它只适用于一个特定的内核,而不适用于另一个内核。此外,我可以从救援系统手动安装文件系统
是BIOS问题吗?
- 可能不是,请参阅上面关于硬件问题的评论
更新:
最后我重新安装了系统,让它再次运行,因为我尝试过的所有解决方案都不起作用。谢谢你们的回答!
答案1
既然您提到了新内核版本,那么一个常见问题就是initrd
映像不完整或损坏。这种情况可能由多种原因导致,最常见的原因是 Ubuntu 在创建/boot
分区时过于贪婪,而分区曾经很小,因此initrd
对多个内核映像进行更新很容易耗尽空间。
再次尝试从救援 CD 启动,然后挂载您的分区和设备:
mount /dev/ROOT_DEVICE /mnt
mount /dev/BOOT_DEVICE /mnt/boot
mount -t proc none /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
之后,执行 a chroot /mnt
,然后尝试运行update-initramfs -k all -u
,同时/boot
密切观察其输出。如果成功,请再次尝试从正常系统启动。如果initrd
图像是原因,您应该能够成功启动。
答案2
- 第一次重置 BIOS 配置
- 第二次检查 UEFI 与 BIOS
- 第三启用/禁用安全启动
- 第四,在 BIOS 中设置管理员密码[但请注意不要丢失密码]。
- 第五,可能有很多原因:您的安装损坏、您的 HDD/SSD 出现故障、您设置了错误的密码 [某些键盘可能会发送错误的键码]、您的硬件与该类型的安装不兼容或者您犯了一些错误。