在具有UEFI的两个SSD上双启动Windows 7和Ubuntu

我最近建立了一个新系统(Asus)UEFI和两个用于启动驱动器的SSD,以及一个用于存储的HDD。 我通过UEFI在第一个SSD上安装了Windows,它工作正常,我已经使用了几个星期了。 但是,当我输入UEFI设置时,即使在高级模式下,它也没有让我选择将第二个SSD设置为引导设备。 我改为启动到现场CD(没有任何问题)并从那里安装ubuntu到第二个SSD(这似乎也没有问题)。

问题是,现在我无法弄清楚如何启动到Ubuntu,只有Windows。 UEFI仍然只允许我选择Windows SSD或DVD驱动器进行引导,当我打开机器时,Grub和Windows引导程序都不会出现。 我是否需要将用于引导加载程序安装的设备设置为我的Windows驱动器?

设置类似系统的人是否知道可能导致此问题的原因? 任何帮助表示赞赏。

编辑:我使用EasyBCD将我的“/ boot”分区添加到Windows引导程序,现在它为我提供了启动到ubuntu的选项 – 但是当我尝试时,它只是给了我Grub救援提示而没有实际加载内核。

EDIT2:我按照UEFI社区文档第一部分中的步骤进行操作。 我运行了两次启动修复,现在我在启动时获得了Grub菜单 – 但是当我选择任何“Ubuntu”选项时,我得到的只是一个闪烁的下划线。 没有提示或任何东西,只是一个带有白色下划线的黑色屏幕。 我尝试输入几个命令,但没有任何反馈。

您的问题可能与UEFI有关。 请遵循UEFI社区文档第1段的步骤: https : //help.ubuntu.com/community/UEFI

这为我修好了:

我的初始设置是在非efi Windows 7之前的efi模式Ubuntu,它会很好地启动到Ubuntu,但不会启动到Windows 7。

由于切换顺序,我已经能够完美地启动每个顺序。

我的笔记本电脑上有几个操作系统,它有三个硬盘驱动器 (HDD1上的Windows 8,HDD2上的Ubuntu LTS和Fedora,HDD3 / SSD上的Ubuntu的最新版本)。 它们都有独立的EFI系统分区(ESP)。

添加缺少的UEFI NVRAM条目

鉴于您的Ubuntu安装有一个grub-efi的工作安装(即如果引导修复没有用其他东西覆盖它,或者没有开始使用grub-efi ,或者Ubuntu SSD上没有ESP),可以使用以下命令将Ubuntu bootmenu条目添加到UEFI NVRAM:

 sudo efibootmgr --create --disk /dev/sdc --part 1 --label "Ubuntu" --loader \\EFI\\ubuntu\\grubx64.efi 

请注意, sdc是我的第三个硬盘驱动器 – 在本例中是 – 我的ESP。 如果您的Ubuntu SSD是计算机中的第二个驱动器,并且您必须创建可能缺少的ESP(例如,如果在Ubuntu SSD上只有一个root /和swap分区),那么您的参数将是sdb--part 3

将grub-efi重新安装到ESP和根文件系统

要重新安装grub-efi您可以在UEFI模式下引导实时媒体,将Ubuntu根文件系统分别安装在该安装点内的SSD和ESP上(例如$mountpoint_of_external_root_filesystem/boot/efi )并运行以下命令:

 sudo grub-install --boot-directory $mountpoint_of_external_root_filesystem/boot/efi /dev/sdc 

同样, sdc是我的第三个硬盘驱动器,相应地替换它以及ESP的安装点的路径。 之后运行efibootmgr并检查是否有ubuntu条目,如果没有从上面运行efibootmgr命令并再次检查。

Ubuntu由于某种原因没有发送默认的UEFI引导加载程序,如果缺少NVRAM条目(例如在固件更新之后,以前称为BIOS更新),这可能会让您遇到麻烦。 您可以将ESP上的EFI/ubuntu复制到EFI/BOOT并复制名为BOOTX64.EFIgrubx64.efiBOOTX64.EFI或者安装gummiboot(参见相关内容)以获得后备。

相关问题和答案