如何使 Ubuntu 成为较新的笔记本电脑(UEFI)的默认启动选项?

如何使 Ubuntu 成为较新的笔记本电脑(UEFI)的默认启动选项?

我有一台安装了 Ubuntu 的 HP Spectre XT。我在设置中关闭了“安全启动”并打开了“旧版支持”。这台笔记本电脑有 UEFI,它总是启动到 Windows 8 而不是 GRUB 菜单。要启动 Ubuntu,我必须转到“选择启动设备”并选择“ubuntu”选项,这将带我进入 GRUB 菜单。

我怎样才能让它默认启动到 Ubuntu?

答案1

我强烈怀疑你不是在 BIOS 模式下安装了 Ubuntu。我之所以这么说,是因为您报告说您的“选择启动设备”启动菜单有一个名为“ubuntu”的选项。如果您在 BIOS(又称 CSM 或旧版)模式下启动 Ubuntu,情况就不是这样了;该选项会显示“从 HD 启动”或类似的通用描述,因为固件无法将 BIOS 模式操作系统识别为 Ubuntu。但在 EFI 模式启动中,此信息存储在 NVRAM 中,因此可供 EFI 的启动管理器使用。

为了确保这一点,请启动 Ubuntu 并查找名为 的目录/sys/firmware/efi。如果存在,则表示您已在 EFI 模式下安装并启动了 Ubuntu。如果不存在,则表示您大概在 BIOS 模式下启动,尽管有办法可以让该目录从 EFI 模式启动中消失,所以我不能肯定这一点。

如果我没记错的话,那么肯定有什么东西阻止了 GRUB 成为默认的引导加载程序。这很可能是因为 HP 固件中存在错误;我听说其他 HP 计算机也存在同样的问题。有相当多的解决方法。我建议您按顺序尝试以下两种方法:

  • 启动 Windows 并打开管理员命令提示符窗口。输入bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi。如果成功,下次启动时就会出现 GRUB。(请注意,您应该{bootmgr}完全按照这种方式输入;我并不是想用花括号表示变量。)
  • 在 Linux 中,运行引导修复工具。这将对启动文件进行一些调整,从而使 GRUB 默认启动。请注意,这种方法相当繁琐,Windows 可能会撤消更改——很可能在某些系统更新后撤消,有些用户报告说每次启动后都会撤消。不过,这种方法通常可以长期有效。

如果这两种方法都不起作用,请回复并附上 和 的输出sudo efibootmgr -vdf -h /boot/efi这些额外的信息将使我能够提出更多建议。

答案2

如果你希望从 ubuntu 中修复它,你可以使用 efibootmgr 实用程序(以 root 身份),部分内容如下回复:

efibootmgr -v

查看已安装的引导加载程序和引导顺序的列表

efibootmgr -o xxxx,yyyy,...

指定默认使用的 BootOrder。

相关内容