Windows 8和Ubuntu双引导问题

我知道有很多人因为所有的UEFI垃圾而在Windows 8机器上启动双启动问题。 事实上,我去年也有过类似的问题。

在Ubuntu旁边安装Windows 8后,我只能启动8

该链接说明我如何解决我的问题。 这是我现在的问题。 我弄乱了我的操作系统并决定从头开始重新加载所有内容。 我重新安装了Windows 8,然后抓了一份Ubuntu 14.04(之前我使用的是12.04)。 我遇到了同样的问题,Windows 8迫使自己启动但是什么解决了我的问题,之后不再有效。 从live cd我运行这些命令:

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update sudo apt-get install -y boot-repair && (boot-repair &) 

我得到各种关于boot-repair不是有效命令的错误。 我终于能够使用这个来运行boot-repair:

 sudo add-apt-repository -y ppa:yannubuntu/boot-repair sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list sudo apt-get update sudo apt-get install -y boot-repair && boot-repair 

我收到关于UEFI被打开的警告(在我完成所有我知道如何确保它被禁用之后),然后启动修复错误。 这是它生成的消息:

http://paste.ubuntu.com/7852448/

我注意到如果我停止正常启动过程并从启动菜单中选择ubuntu,我可以启动到Ubuntu但这是我所拥有的最好的。

我也尝试从Windows运行此命令:

 bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi 

我在这里死了。 你们可以提供的任何帮助都是一流的。 谢谢!

尝试启动修复你可以从这里得到它 – http://sourceforge.net/projects/boot-repair-cd/files/安装它从CD / DVD / USB启动它,当它要求你32 / 64-位会话选择32位,如果你的PC是32位,如果它是64位选择64位,那么如果它要求你更新点击否,那么当它完成扫描点击推荐修复

根据您的Boot Repair输出,特别是它显示的efibootmgr输出,它现在应该正常工作。 (一个警告:没有证据表明您的ESP上有任何EFI引导加载程序;但是Windows启动意味着这必须是引导修复遗漏,因此我对这些证据进行了折扣。)事实certificate它不起作用你有一个严重破坏的固件。 您之前的问题表明您已经拥有惠普笔记本电脑,并且众所周知,许多惠普都拥有如此严重破坏的电子邮件。 因此,我的第一个建议是与HP核实是否有固件更新。 如果有,请应用它并在Windows中使用bcdedit命令再次尝试; 那是最有可能工作的。

另请注意,如果您已禁用安全启动,则使用bcdedit指定grubx64.efi是合适的。 如果安全启动处于活动状态,则必须指定shimx64.efi ,而不是grubx64.efi 。 如果安装文件已安装,则指定shimx64.efi也可以正常工作,因为它通常在非安全启动系统上。

还有一点:如果您尚未执行此操作,则必须禁用Windows快速启动function,如此处所述(以及其他位置)。 如果启用该function,则可能导致共享分区上的文件损坏,包括引导加载程序所在的ESP。 这可能就是为什么Boot Repair没有检测到ESP上的任何引导加载程序,并且可以想象它会导致您的问题。

如果遵循此建议不起作用,那么您有两个选择:

  • 把你的笔记本电脑出售给那些只想运行Windows的人,并用钱购买一些没有损坏的东西。 在这个时间点,这是我的第一个建议; 制造商已经有足够的时间来修复他们破损的EFI,而且很多人并没有表示不尊重他们的客户。 有些像华硕和联想这样的EFI更有可能发挥作用。 较新的型号也比旧的型号更有效。
  • 重命名您的Ubuntu引导加载程序(ESP上的EFI\ubuntu\grubx64.efiEFI\ubuntu\shimx64.efi ;或者您可以适当地重命名另一个EFI引导加载程序 )来取代Microsoft的引导加载程序( EFI\Microsoft\Boot\bootmgfw.efi )并调整引导加载程序配置。 使用GRUB手动操作很棘手,但Boot Repair中有一个选项可以完成这项工作。 它是高级选项之一,它被称为“备份和替换EFI引导加载程序文件”。 (我不记得确切的措辞。)这是一年或两年前的默认值,但在大多数情况下都是过度杀戮,并且可能会在没有损坏的EFI的计算机上引起一系列新问题,因此它不再是默认设置。 您可能需要使用它并承担后果,或以这种方式安装其他一些引导加载程序。

好吧,不管你信不信我修好了。 我重新运行了几次启动修复,直到它实际工作…有几行启动修复你有复制和粘贴,其中一行是失败的。 我将命令分成单独的行而不是串在一起而且它的错误更少……然后Grub加载得很好……

感谢您的帮助!

以下是惠普笔记本电脑在Windows 8 / 8.1和Ubuntu 14.04.02之间进行双启动的关键步骤和信息位。 这台笔记本电脑是一个非常现代的Pavilion g7-2215dx。

  1. 这台笔记本电脑的BIOS(可能是大多数现代惠普笔记本电脑)都有一个UEFI启动菜单,按ESC键可以访问,然后在菜单出现时按F9。 如果在EFI分区中正确设置了节并且磁盘布局正确,则此菜单正常工作。 (即:如果您允许Ubuntu将正确的更改加载到EFI分区,或者如果您已经运行了引导修复,并且分区位于正确的位置),不幸的是,Ubuntu安装程序假定如果UEFI存在,那么系统有一个Windows分区,没有启动菜单。 实际情况是,这些HP计算机具有UEFI启动存储中列出的隐藏恢复分区,并且Windows启动菜单未出现的原因是HP出厂时将启动菜单上的超时设置为0.(廉价技巧) Ubuntu安装程序似乎不了解已存在的多引导配置,因此它无法正确创建条目。

  2. 此BIOS在启动时快捷方式为{bootmgr},而不是{fwbootmgr}。 但是,F9命令正确地转到{fwbootmgr}这就是修改{bootmgr}的常见错误。

  3. 惠普确实将允许安全grub引导程序的密钥放入BIOS中,因此可以打开安全启动并安装Ubuntu。 不幸的是,由于grub中的错误,您无法启用安全启动和双启动,因为在安全启动模式下,当grub将控制权转移到Windows启动加载程序时,该加载程序的密钥似乎不匹配。 您可以保持安全启动并仅安装Ubuntu。 或者你可以保持安全启动并使用F9键手动选择grub或Windows,忘记让它直接启动进入grub。

  4. 您不能允许Ubuntu的默认安装程序将grub安装到/ dev / sda。 它必须将引导加载程序安装到/ dev / sda2(或任何EFI分区)。为Ubuntu安装创建逻辑分区而不是主分区也是一个好主意。

  5. 另一个关键是如果你改变任何东西的启动优先级,它将干扰启动。 这意味着如果在安装之前更改BIOS以引导USB密钥或从CDROM引导然后安装,当Ubuntu创建UEFI条目时,它将根据该引导顺序执行此操作。 如果你完成安装,然后更改BIOS以启动硬盘,它会搞砸。 当您在BIOS引导顺序中进行更改时,BIOS会在EFI分区上的UEFI引导存储中进行更改。 这些变化通常是不正确的。

  6. 完成安装Ubuntu并将笔记本电脑重新启动到Windows后,进入管理命令提示符并运行命令:

     bcdedit /set {bootmgr} path \EFI\Ubuntu\shimx64.efi bcdedit /set {bootmgr} displaybootmenu no 
  7. EasyBCD 2.2在这些机器上打破了EFI分区 – 作者或EasyBCD显然没有这些机器中的一个进行测试,他的软件做出了一些不正确的假设,并且它无法正确解释EFI分区上的UEFI存储。 在测试期间,我已使用此实用程序多次完全扫描双启动盘。 我建议不要在任何情况下使用它! 此外,请注意,如果EFI分区被破坏,Windows恢复DVD将无法修复双启动UEFI系统 – 您将不得不重新格式化 – 他们不要触摸该分区! 我甚至认为Windows备份没有。 块备份实用程序可能类似于Macrium Reflect。

  8. 到目前为止,我发现EFI分区的最佳工具是Windows下的bcdedit。 运行bcdedit /? 和bcdedit / enum ALL / v和bcdedit / enum /? 等等 – 基本上运行/? 关闭bcdedit的所有选项,你将学到很多关于启动如何工作的知识。

  9. 如果您稍后加载Windows升级(即:从Windows 8升级到Windows 8.1),较新的Windows安装程序将使用EFI进行清理并再次禁用双启动。 您可能无法获得双重启动。 我这样做后的一个错误是来自启动修复,它说grub距离磁盘的开头太远了。 显然,Windows 8.1更新移动了EFI分区。 在重新格式化之前,我始终无法让该机器启动进入grub。

  10. 这些机器具有“智能”BIOS – 它们如何智能? 它们很聪明,因为它们读取EFI存储,尝试执行启动菜单,如果失败,它们将被硬编码为启动Windows。 所以结果就是如果你在EFI商店中犯了一个错误,你就不会得到一个有用的错误信息(比如它找不到错误命名的文件或其他东西)它只会启动进入Windows。 它们旨在减少搞砸PC的用户的支持呼叫。 并且,如果他们发现他们认为EFI商店中的错误条目,他们有时会将其擦除并用他们认为在POST期间正确输入的内容替换它。

顺便提一下,工厂恢复DVD可能不会给你一个机会来分区你的磁盘所有漂亮和漂亮的双启动。 它们通常对分区位置进行硬编码。

总之,EFI分区比以前的启动方案有了很大的进步,它将继续使用,因此您最好习惯它,并了解它。 惠普机器都有惠普恢复分区和Windows恢复分区,可通过各种F键组合以及Windows 8及更高版本中的选项进行访问,这是微软“零安装媒体”计划的一部分,他们试图让所有PC制造商参与其中不为他们的机器提供恢复CD。 (主要作为反盗版措施)这些可启动分区都在EFI分区中正确设置,问题是机器的BIOS都采用不同的方法来读取EFI,以及许多实用程序(如EasyBCD,以及Ubuntu安装程序本身和HP BIOS)无法正确解释EFI中的多引导设置,当它们进行更改时,它们会解决问题。 但是,您通常可以在Windows下使用bcdedit修复问题,但您必须了解EFI,因此需要进行读取。