我已经在加密分区中克隆了带有 ubuntu 20.04 的磁盘设置,并使用 dd 将其克隆到更大的 NVME SSD。但是,BIOS 不再识别启动管理器中的任何磁盘。旧磁盘将启动,但只能在 Windows 计算机上的 CSM 设置下启动。我已经从新磁盘上的实时 CD 运行了启动修复实用程序,但它并没有解决这个问题。新克隆上的 EFI 分区不包含任何 *.efi 文件,只有一个系统卷信息文件夹,这让我认为 Windows 可能覆盖了原始磁盘上的 EFI 分区。我该如何恢复?我的启动分区仍然没有动过。从实时 CD 运行的启动修复实用程序的输出位于此处 (https://paste.ubuntu.com/p/cxMP5w7Tw6/)
答案1
好的,系统恢复正常运行...
首先,/boot/efi/EFI 不包含任何二进制文件,这就是 nvme 驱动器未被 bios 检测到的原因。我认为我的 Bios 只允许 UEFI 模式,需要填充该文件夹。
我能够使用以下方法恢复并启动我的系统超级Grub2此实用程序支持 Ubuntu 和 Debian,无需 EFI 二进制文件。它启用了 Grub2 菜单选项的重建,并允许我的系统完全启动。它还支持使用 LUKS 加密的根分区,有一个菜单选项可以启用此选项,请在让实用程序分析 grub.cfg 之前运行该选项。这比 chroot 修改容易得多。
登录后,最后一步是运行
sudo grub-install /dev/nvme0n1
sudo update-grub
注意:如果软件包grub-efi-amd64
已安装,这些命令将恢复 EFI 目录和二进制文件. 使用以下方式安装
sudo apt install grub-efi-amd64
然后运行上面的两个命令。
由于我必须安装 grub-efi-amd64,所以我并不完全相信磁盘映像最初设置为在 UEFI 模式下运行。