在 /target/ 安装 grub2 包时出错

在 /target/ 安装 grub2 包时出错

我是 Linux 新手,到目前为止只使用过 Windows(目前:Windows 8)。但对于我大学的本科项目,我被建议将 Linux 与统计物理计算结合使用。我想要双启动 Windows 8 和 Linux。

在安装之前,我阅读了很多警告和提示。我遵循了它们(在 Windows 8 中禁用安全启动,禁用快速启动)。然后我创建了一个用于 Linux Mint 17.2 Mate 的分区和一个交换分区。我安装了它,一切正常。但是当我打开电脑时,grub 屏幕没有出现。经过一天的工作,我安装了 Xubuntu 而不是 Mint,并做了一些启动修复,并在启动修复高级选项中禁用了“安全启动”选项。之后,我可以毫无问题地使用 Xubuntu,重启后也是如此。但我更喜欢 Mint,所以昨天我尝试以与 Xubuntu 相同的方式安装 Mint。但在“安装 grub2 包”时,安装因错误而中止:

grub-efi-amd64-signed 包无法安装到 /target/。

我的猜测是,在安装过程之前,我弄错了引导加载程序的位置。我安装了 Xubuntu(后来又删除了),使用 Xubuntu 时,我将引导加载程序安装在 /dev/sda2 中,Windows 引导管理器也位于此处。在此之前,在另一次安装 Xubuntu 时,我将引导加载程序安装在单独的 /boot 分区 /dev/sda8 中。最后,另一次,我也将引导加载程序安装在 /dev/sda 中。这确实是一个反复试验的过程,解决了一开始没有出现 grub 屏幕的问题。

我的猜测是,现在我在 sda、sda2 和 sda8 上使用 Xubuntu 安装的那些引导加载程序会导致使用 M​​int 安装 grub2 包出现问题。

我已经查看了很多关于同一问题的页面,但都没有解决。我有互联网连接,并且存在“extra 64”(请参阅Ubuntu 12.04 --- grub-efi-amd64-signed 无法安装到 /target/)。

我该怎么办?有经验的用户有什么建议吗?还是我应该尝试其他发行版?提前谢谢!荷兰问候。

答案1

HP 因忘记其引导加载程序信息而臭名昭著,并且甚至在 Boot Repair 输出中也有证据支持这一假设;例如:

chroot /mnt/boot-sav/sda5 efibootmgr -v
BootCurrent: 0000
Timeout: 0 seconds
No BootOrder is set; firmware will attempt recovery

请注意最后一行,这意味着计算机将尝试启动后备引导加载程序 -- EFI/BOOT/bootx64.efi。(在这种情况下,某些 EFI 实际上会回退到 Windows 引导加载程序 -- EFI/Microsoft/Boot/bootmgfw.efi。)

这是有缺陷的固件。您可能能够从 HP 获得修复,但这不太可能。如果电脑足够新,我会将其退回商店并获得退款;但您提到 Windows 8 让我认为您已经过了那个阶段。

假设您确实需要双启动,那么您将有两个选择:

  • 重命名备用引导加载程序(我之前提到的两个),并在其位置放置 GRUB(或其他引导加载程序或引导管理器)的副本。这是一种不稳定且丑陋的变通方法,而不是修复方法;但这是获得结果的最简单方法。Boot Repair 有一个选项可以自动执行此操作。它在高级菜单中被称为“备份和替换引导加载程序”(我不记得确切的措辞)。
  • 清除磁盘并重新安装 Windows 和 Ubuntu,但要在 BIOS/CSM/传统模式下进行,而不是在 EFI/UEFI 模式下。不过,强制启动模式可能有点棘手;你需要弄清楚如何使用你的具体固件实现,因为没有标准化如何做到这一点。这种方法的一个变体是将您的两个操作系统转换为在 BIOS 模式下启动,但这可能比重新安装更繁琐。您可能只希望在您花费大量时间自定义安装并拥有大量数据文件的情况下才这样做——但就地转换有数据丢失的风险,因此无论如何您都需要备份以确保安全,此时重新安装开始看起来相当合理。

相关内容