启动时无法在 Ubuntu 或 Windows 之间进行选择;已经尝试了很多建议

aaa*_*ton 5 grub2 dual-boot boot-repair system-installation

昨天我使用 live cd 在已经装有 Windows 8 的计算机上安装了 Ubuntu 14.04。Ubuntu 安装无法识别计算机上的任何操作系统,所以我选择了别的东西,最终得到了几个分区。(如果重要的话,我有四个 Windows 分区(恢复、启动、包含我所有文件的主要分区,以及其他一些很小所以我不用担心的/分区),加上一个主要的 Ubuntu分区和交换分区。)

安装Ubuntu并重启后,启动时一直没有选择Ubuntu和Windows的选项;它只是作为 Windows 启动。现在安装了 Ubuntu,但我无法使用它!

我试过的:

  1. 我尝试使用Windows 上的高级系统设置来启用引导选择,但 Windows 8 也无法识别任何其他操作系统。
  2. shift在启动期间按住不放以尝试获取 grub 屏幕,但没有运气。(在完全关闭 Windows 8 之后,而不是快速启动废话。)此外f8,没有运气。
  3. 其他指南说要进行引导修复。我下载了映像文件,将其刻录到 cd 中,并尝试从中启动,但没有任何反应;Windows 正常启动。我从 live cd 启动,打开终端,并且(按照Ubuntu 论坛上本指南的指示)

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

    一切都很好,直到最后两行回读:

    W: Failed to fetch http://ppa.launchpad.net/yannubuntu/boot-repair/ubuntu/dists/trusty/main/binary-amd64/Packages  404 Not Found
    E: Some index files failed to download.  They have been ignored, or old ones used instead.
    
    Run Code Online (Sandbox Code Playgroud)

    此处讨论了 404 HTTP 错误:无法找到最新版本的 Ubuntu 的引导修复包,因此我使用了该建议:

    sudo add-apt-repository ppa:yannubuntu/boot-repair
    sudo sh -c "sed -i 's/trusty/saucy/g' /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list"
    sudo apt-get update
    sudo apt-get install -y boot-repair && boot-repair
    
    Run Code Online (Sandbox Code Playgroud)

    启动修复工作(呜呼!),它运行了几秒钟,然后弹出一个说

    检测到 EFI。请检查选项。

    我选择修复最常见的问题。它告诉我在 BIOS 中禁用 SecureBoot。

    它做了一些思考,然后告诉我把它放到一个新的终端中:

    sudo chroot "/mnt/boot-sav/sdb5" dpkg --configure -a
    sudo chroot "/mnt/boot-sav/sdb5" apt-get install -fy
    sudo chroot "/mnt/boot-sav/sdb5" apt-get purge-y --force-yes grub* shim-signed linux-signed*
    
    Run Code Online (Sandbox Code Playgroud)

    我被提示继续前进,它说将以下内容复制粘贴到终端中:

    sudo chroot "/mnt/boot-sav/sdb5" apt-get install -y --force-yes grub-efi-amd64-signed shim-signed linux-signed-generic
    
    Run Code Online (Sandbox Code Playgroud)

    继续之后,它说在修复过程中发生了错误,并记下这个 URL,如果我仍然有启动问题,请发送电子邮件至boot.repair@gmail.com。它还提醒我在 BIOS 中禁用 SecureBoot。

    我禁用了 SecureBoot,但没有任何改变。Windows 仍然启动,就像以前一样。

  4. 我再次从 live cd 启动并打开了我的 grub 文件。

    sudo gedit /etc/default/grub
    
    Run Code Online (Sandbox Code Playgroud)

    grub文件上来了,我#在前面加了个GRUB_HIDDEN-TIMEOUT=0,保存,在终端写:

    sudo update-grub
    
    Run Code Online (Sandbox Code Playgroud)

    这回来了:

    /usr/sbin/grub-probe: error: failed to get canonical path of '/cow'.
    
    Run Code Online (Sandbox Code Playgroud)

这就是我所得到的。一点运气都没有。有人可以帮我弄清楚我在这里做错了什么吗?

小智 0

现在 EFI 已禁用,请尝试重新安装。您还可以使用 SuperGrubDisk

http://www.supergrubdisk.org/wizard-restore-grub/

我不是专家,但我怀疑 EFI 阻止了 Grub 被放到 MBR 上。


Sud*_*eer 0

不推荐在启动修复中使用高级选项(左下角)

打开启动修复中的高级选项

在高级选项=>主选项中(无需更改)

高级选项=>GRUB位置(选择“将grub放入”选择“sda”)

高级选项=>GRUB选项(选择“重新安装之前清除grub”)

高级选项=>其他选项(如果选择了“修复Windows启动文件”和“检查互联网连接”,请取消选择)

这可能会用 grub 覆盖您的 Windows 引导加载程序,然后您可以从 grub 引导加载程序中选择操作系统