在 Windows 8 上安装 Ubuntu 后如何显示 GRUB?

Phi*_*ipp 6 installation grub2 uefi windows-8

我安装了 Windows 8 ,然后我安装了 Ubuntu。这是我现在的分区:

  • 70Gb --> Windows 8
  • 50Gb --> Ubuntu 12.10
  • 100Mb --> UEFI
  • 300Mb --> 恢复

我在/dev/sda. 然后,在 GRUB 没有出现并直接启动到 Windows 8 之后,我关闭笔记本电脑并再次启动到 Ubuntu LiveCD 并运行启动修复实用程序,它给了我这个信息,但它没有解决问题。

我的笔记本电脑仍然可以直接启动到 Windows 8,甚至没有出现 GRUB 或 Ubuntu。

Sto*_*rux 6

按照以下步骤在 ubuntu 上安装 Boot-Repair

打开终端并运行以下命令

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair
Run Code Online (Sandbox Code Playgroud)

完成安装后,如果您使用 Gnome,您可以从 System->Administration->Boot-Repair 菜单启动它,如果您使用 Unity,则可以在 dash 中搜索“boot-repair”。然后按照以下屏幕截图操作:

方法一

  • 点击高级选项

初始画面

  • 勾选下面显示的选项

高级选项

  • 将tab改成Grub Location选项卡,勾选如图所示的选项

在此处输入图片说明

按应用并重新启动系统

方法二

  • 选择推荐的启动修复选项,如第一个屏幕截图所示


Rod*_*ith 0

有可能发生以下两种情况之一:

  • Ubuntu 没有完全安装其引导加载程序,在这种情况下,您需要使用efibootmgrLinux 应急光盘中的程序来完成工作。总的来说,这似乎有点不可能,但我希望这是正确的可能性。
  • 您的固件是违反 EFI 规范并启动 Windows 的众多损坏设计之一,尽管另一个启动加载程序已正确配置为默认值。

有多种可能的解决方案,具体取决于发生的情况以及您对如何进行的个人偏好。这些包括:

  • 在 EFI 模式下启动 Linux 应急光盘并键入sudo efibootmgr -c -p 2 -d /dev/sda -l "\EFI\ubuntu\grubx64.efi" -L "Ubuntu"以向 ESP 重新注册 Ubuntu 的启动加载程序。/dev/sda如果您的引导方法将当前的引导方式更改/dev/sda为其他引导方式,您可能需要进行更改。根据您使用的光盘,您可能还需要安装并在使用之前efibootmgr执行. 仅当我对错误的第一个假设正确时,此方法才有效。insmod efivarsefibootmgr
  • 运行启动修复工具并告诉它修复问题。这种方法行之有效的可能性很高,而且很容易做到,但它可能会在未来产生更多问题。如果不起作用,解决所有问题就会变得更加困难。
  • 挂载 EFI 系统分区(ESP;您的 /dev/sda2),将EFI/Microsoft/Boot/bootmgfw.efi文件下移一级(以便它是EFI/Microsoft/bootmgfw.efi),然后复制EFI/ubuntu/grubx64.efiEFI/Microsofot/Boot/bootmgfw.efi. 这是引导修复要做的关键事情,但完成方式略有不同。然后,您需要修改/boot/grub/grub.cfg文件才能启动 Windows。我不确定update-grub脚本是否会自动获取更改。可能会,但如果不是,您需要/etc/grub.d/40_custom为 的新位置创建一个新的 Windows 条目bootmgfw.efi
  • 下载并安装我的rEFInd程序。有多种方法可以做到这一点,每种方法都有自己的怪癖和注意事项。如果您可以启动非引导安装(例如使用Super GRUB 2 Disk),则安装 Debian 软件包很可能(但不确定)会成功。根据安装方式,rEFInd 可能能够直接引导 Linux,而无需使用 GRUB。


Lov*_*ntu 0

它很可能是违反 UEFI 规范的固件。

要解决此问题,请运行Boot-Repair--> Advanced options--> 勾选Backup and rename EFI files--> Apply。如果有任何疑问,请指出将出现的新 URL。