我搜索过这里并尝试修复此问题,但似乎没有任何效果。我最近在 HP PC 上安装了 Ubuntu,该 PC 预装了通过 UEFI 的 Windows 8。我对 Ubuntu 和 Linux 都很陌生,但我真的很想学习。因此,在安装过程中,我选择了“与 Windows 一起安装”。完成安装后,选择 Windows 8 的选项不起作用。我必须使用系统设置并进入启动选项并选择 Windows 启动加载程序。因此,我搜索了一下,发现我应该运行启动修复,所以我这样做了。之后,它在 Grub 中添加了许多其他选项。我可以选择 Windows 启动 UEFI,它会加载 Windows。现在,当我选择 Ubuntu 时,它不会启动。它只是停留在一个空白的紫色屏幕上。只有在插入 LiveUSB 的情况下,我才能启动 Ubuntu。我该怎么办?我只想能够在 Windows 和 Ubuntu 之间进行选择,它们都可以工作。如果有帮助的话,这是这个。
答案1
保持安全启动,并避免非 UEFI Windows 启动 grub 条目。这些条目有错误的 chainloader +1 命令而不是 EFI 路径。您可以尝试通过编辑 /etc/grub.d 中的文件来清理它们,但这并不是必需的。将 grub.cfg 文件中的良好 UEFI Windows 条目附加到 /etc/grub.d/40_custom 中,并编辑 30_os-prober 以删除 Windows 条目(或者只是从 30_os-prober 中删除权限位,使其创建的所有条目不出现)。然后运行
sudo update-grub
更新 grub.cfg 文件和 grub 菜单。当然,您可以直接编辑 /boot/grub/grub.cfg 文件,但更改将在下次内核更新时被覆盖。