如何修复无法启动具有加密根磁盘的 Ubuntu 设置?

如何修复无法启动具有加密根磁盘的 Ubuntu 设置?

Ubuntu 无法启动,但会打印一些奇怪的东西

  • /run/lvm/lvmetad.socket: connect failed: No such file or directory
  • 或者/sbin/cryptsetup not found

然后几分钟后又回到busybox(有时..)。

在移动到新硬盘后,我必须删除加密分区,然后出现错误。chroot进入根分区并运行后,出现udpate-initramfs -u上述错误在这个 Ask Ubuntu 问题中弹出:

cryptsetup: WARNING: could not determine root device from /etc/fstab

我遵循了本文中建议的设置:使用 Ubuntu 进行全盘加密。现在我/在 LUKS 中有一个带有未加密/boot分区的 btrfs 卷。所有这些都在 EFI 上运行,并且禁用了安全启动。

答案1

在 Dell XPS13 (2020) 上更新 Ubuntu 20.04 后遇到了非常类似的问题。搜索了几个小时,解决方案其实很简单。

重新启动并使用“fn 和 F2”进入 BIOS
BIOS > 系统配置 > Sata 操作 > 从“RAID On”切换到“AHCI”

由于某种原因,此 BIOS 设置被切换了。

答案2

所有默认的黑客和修复都让你走上了正轨,但它们都不完整。这是我的解决方案:

  1. 确保/etc/crypttab文件设置正确。所有条目必须引用现有分区。至少应有一个名为“root”的条目,这是根条目/。这对我来说至关重要 - 但到目前为止没有人提到它!
  2. /etc/fstab应在中引用此条目/dev/mapper/root。检查 UUID 是否正确设置
  3. 现在运行update-initramfs -u 只更新您最新的内核。如果弹出 cryptsetup 警告,则表示您之前的步骤失败了。检查所有文件并尝试找出问题所在
  4. 运行update-grub以修复任何剩余的 grub 问题
  5. 现在检查/boot/grub/grub.cfg。搜索第一个menuentry将要启动的。该search 部分应包含启动分区的 UUID(未加密!)。该linux部分应该有一些内容说明 root=/dev/mapper/root或指向未加密卷的 UUID(在我的设置中为 btrfs 卷)
  6. 尝试启动。如果 lvm 错误仍然弹出,请按照这个答案

最后一条建议:留意任何小warning弹出窗口。通常它们毫无意义,但在这种情况下它们非常重要。

祝你好运!

相关内容