EFI双启动Windows 8.1和Ubuntu 14.04

我按照Ubuntu论坛post中的说明在 Windows 8.1的双启动配置中安装了Ubuntu 14.04 LTS

(我添加了一个ext4 /home分区。)

即使在第七步之后,

在终端写入bcdedit /set {bootmgr} "path\EFI\ubuntu\shimx64.efi"

我的电脑不会显示启动菜单:Windows会自动启动。

我运行命令sudo efibootmgr -v 这是输出 。

你的问题

 BootNext: 0009 BootCurrent: 000F Timeout: 0 seconds BootOrder: 000F,0008,0009,000A,000B,000C,0007,000D,000E,0001 Boot0001* Windows Boot Manager HD(3,363800,82000,17b1af25-3a01-4b33-9fa5-e6324bca1b76)File(\EFI\ubuntu\grubx64.efi)WINDOWS.........x...BCDOBJECT=.{.9.dea8.6.2.c.-.5.cdd-.4.e.7.0.-.acc1.-.f.3.2.b.3.4.4.d.4.7.9.5.}.................... 

正如您已经发现的那样,您可能在\EFI\ubuntu\grubx64.efi中有一个function条目,似乎被标记为Windows Boot Manager ,这可能非常令人困惑。

可能的方案

由于我不知道重命名这些条目的方法,我建议通过运行以下efibootmgr命令来删除此条目:

 efibootmgr -B 0001 

其中0001是要删除的条目的编号,应根据当前的efibootmgr输出进行更改。

要创建新条目,请运行以下命令:

 efibootmgr -c -d /dev/sdX -p Y -l \EFI\ubuntu\grubx64.efi -L "Ubuntu" 
  • /dev/sdX应该更改为包含Ubuntu分区和EFI System Partition / ESP的实际设备名称(建议为每个要启动的驱动器安装ESP),最有可能是/dev/sda
  • Y是ESP的分区号,很可能是1

可能的解决方法或建议的后备可能是设置gummiboot 。

我发布了一个答案,因为我有很多东西需要分享!

1 – 感谢@LiveWireBT我已经使用EFI Boot Manager创建了一个新条目(名为Ubuntu),我可以使用Windows启动管理器选择它。 但是当我选择Ubuntu时,我的电脑不想启动它。 它在Windows上启动。

2 – 在使用easybcd后感谢@ user305306,我发现Windows 8.1是“默认情况下”系统。 所以我改变配置来得到这个:

的EasyBCD

我重新启动计算机,然后看到一个让我选择系统的菜单! Weepee! 但是当我选择Ubuntu时,我得到一个错误,他说他找不到grubx64.efi。 我很快就会发布这张照片!

编辑:这是我得到的错误: 错误信息

英语:由于文件丢失或包含错误,因此无法对应用或系统收费。

获取EasyBCD:问题解决了。 我的计算机上有两台带有Windows 7的Linux操作系统。

下载EasyBCD

在几乎所有的BIOS中,都有一些叫做引导顺序的东西。 在今天的UEFI系统中,这仍然是一个选项。 但是,一旦Ubuntu启动就会启动GRUB,当您在GRUB中选择Ubuntu时,它会继续启动过程。 如果选择Windows,它会将您“重定向”到Windows分区并启动。 但是,如果直接启动到Windows,则意味着您的系统根本没有尝试启动Ubuntu。 有一个简单的解决方案。 计算机一打开,请按F1F2删除esc或类似设置以访问设置。 如果您正确执行此操作,您将看到类似于下面显示的屏幕,但每个BIOS都被访问并以不同方式显示。

BIOS

导航到引导设置。 在此示例中,您应按四次右箭头键转到标有“Boot”的选项卡。 然后查找称为“引导顺序”或“引导优先级”的内容。 事情变得复杂了。 在BIOS’中,您将看到设备列表并在列表中上下移动它们。 但是,在UEFI中(您已经拥有,如果您还不知道,与EFI相同),您可以从所有检测到的设备上的所有现有可启动分区的列表中进行选择。 你想先将Ubuntu分区设置为启动,所以,如果你还没有,请进入启动顺序设置并确保看到如下所示的屏幕(下面的屏幕是在传统BIOS中拍摄的,抱歉)。

在此处输入图像描述

尽管你可能听说过,但你应该保持安全启动。 我来告诉你Secure Boot的工作原理。 每个支持安全启动的UEFI系统(基本上只是与Windows 8的OEM安装一起提供的任何计算机)都有一个键入BIOS的密钥列表。 Windows几乎总是有一把钥匙。 基本上,您的UEFI需要一个密钥才能启动。 这样,如果病毒试图让您的计算机启动病毒,您的UEFI就会说您无法启动,因为您没有密钥。 在引导之前你必须有一个相应的键。 这就是Secure Boot保护您的方式。 但是,并非每个UEFI都有Ubuntu的密钥。 从CD,闪存驱动器或硬盘驱动器启动时,启动过程没有区别。 因此,如果您可以从CD或闪存驱动器启动Ubuntu或运行安装程序,您的UEFI具有Ubuntu的密钥并且知道Ubuntu是安全的。 这意味着您可以毫无问题地启用安全启动。 万岁! 此外,您需要保持启用UEFI,并且永远不要将其设置为传统模式或BIOS模式或UEFI可能会说的任何内容。 然后,在列表中,您应该看到标记为Ubuntu的选项或类似的选项。 将其移动到列表顶部,因为列表可以重新排列。 保存并退出UEFI,如果幸运的话,您应该看到GRUB询问要引导的操作系统。

我设法启动到Ubuntu!

  1. 我建议使用efibootmgr作为LiveWireBT 。

  2. 在使用EasyBCD的Windows中,我改变了Ubuntu的状态。 我把“系统默认”放在列表中的第一位

  3. 我删除了所有“Windows启动管理器”条目,除了Windows 8.1

  4. 当我重启我的电脑时,我可以访问Grub,我可以选择Ubuntu!