在新硬盘上安装 Windows 10 后,Ubuntu 18.04 将无法启动。
计算机启动到 Grub 2.02,但是启动到我不熟悉的版本,显示 EFI 映像。
选择不同的选项将产生以下结果:
- “EFI/ubuntu/fwupx64.efi”让我返回菜单,没有任何消息
- “EFI/ubuntu/mmx64.efi”显示 Shim UEFI 密钥管理屏幕
- 所有“efi/Efi//.efi”选项导致文件未找到错误
- Windows 选项正确启动 Windows
我尝试过几次 Boot-Repair,但都没有成功。Boot-Repair 的最新报告可以在这里找到这里。
有什么方法可以完全重新安装 EFI 设置吗?
更新:
运行grub-mkconfig
会产生相同的错误菜单项。配置是使用 中的文件生成的/etc/grub.d
。我的目录仅包含/etc/grub.d/25_custom
,这是该目录中唯一的文件。看来我的/etc/grub.d
模板被搞坏了,我需要找到一种方法来重新生成它们。是否有命令可以重建这些模板?
答案1
假设在 Ubuntu 之后安装了 Windows,则在 Windows 中启动并以管理员模式打开 cmd 提示符。运行此 cmd 行:
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
计算机应直接启动到 Ubuntu。打开终端并更新 Grub:
sudo update-grub
如果您看到 Win Boot Manager,则一切就绪。实际的 Grub 菜单(屏幕截图)是 Grub 修复的结果,无需使用它,因为问题出在 Windows 端。
答案2
正如@karels 评论指出的那样,grub 配置是使用 中的文件生成的/etc/grub.d
。我的目录只包含/etc/grub.d/25_custom
,其中包含屏幕截图中显示的奇怪菜单项。看来我的/etc/grub.d
模板可能被 控制了boot-repair
。
我通过以下方式修复了这个问题:
- 使用 Live CD 启动(使用相同的 Ubuntu 版本可能很重要)
sudo mount /dev/sdxx /mnt
sudo cp /etc/grub.d/* /mnt/etc/grub.d/
sudo update-grub
- 48 小时的痛苦过后,重新开始并放松