先谢谢您的帮助。
我有一台安装了 Ubuntu 20.10(之前为 20.04)的 Dell Precision 7540。这是一个非常正常的安装,使用单个物理 nvme 磁盘,具有单独的引导分区和主分区上的 LUKS。我无法再通过 Grub 启动屏幕进行启动。我必须选择的选项是:
Ubuntu 与 Linux 5.8.0-26-generic
Ubuntu 和 Linux 5.8.0-26-generic(恢复模式)
这两个选项具有相同的行为。 10-15 秒后,我会看到 (initramfs) 提示符。输入 exit 会出现以下结果:
Gave up waiting for root file system device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/mapper/vgubuntu-root does not exist. Dropping to a shell!
我尝试过的事情:我尝试从 Live USB 启动,并且可以成功挂载 LUKS 分区。我已经从实时 USB 安装并运行启动修复,修复后,它给了我一个 Pastebin 链接,如下所示,但仍然无法启动:
http://pastebin.ubuntu.com/p/HxXj4qfrqS/
我还对我的安装进行了 chroot 并运行 update-grub、grub-install 和 update-initramfs,但这些都没有改变任何内容。
如果有任何其他信息有助于诊断此问题,请告诉我。
更新:我已经让它启动了,但只有在从 initramfs 解锁 LUKS 分区之后才能启动。通过执行以下命令:
cryptsetup luksOpen /dev/nvme0n1p3 nvme0n1p3_crypt
并输入密码,然后:
exit
它将启动。我怎样才能让它提示我这一点,而不是超时并将我丢到 initramfs?
答案1
修复。
我需要从 etc/crypttab (第三个字段)中的行中删除密钥文件并将其替换为none
.
它看起来像这样:
nvme0n1p3_crypt UUID=ecb87885-85fa-426d-9242-8b14d23f48c4 none luks,discard
现在它在启动时提示我输入密钥。我猜它指向的密钥文件无法访问或不正确。
答案2
您可以使用带有 Ubuntu Live 的 CD 或 USB 记忆棒,下载引导修复并以这种方式修复 grub。