在安装Ubuntu作为双系统操作系统时,无法将引导加载程序安装到指定位置。

尽管阅读了几篇与此问题相关的askubuntu博客,但我在过去的24小时里一直在努力解决这个问题。
我当前的操作系统是Windows 10,它有一个EFI分区。我有一个可启动的USB,我正在尝试安装Ubuntu 18.0.4。
电脑规格:1TB硬盘(100GB未使用空间) 256GB固态硬盘(80GB未使用空间) 目标:将'/'安装在固态硬盘上,'/home'安装在硬盘上。
在Ubuntu安装的驱动器选择屏幕上,'/dev/sda'显示为'硬盘','/dev/sdb'显示为'固态硬盘'。
安装失败,显示以下错误信息...
Unable to install GRUB in /dev/sda
Executing `grub-install /dev/sda` failed.
This is a fatal error.

这个链接讨论了同样的问题。但是在安装过程中我无法打开终端。
我尝试使用“尝试Ubuntu”选项然后进行安装。在这里我可以打开终端。但是在这个终端上,这个问题中提到的命令都不起作用。
另外,如果我同意“继续而不安装引导程序”,在重新启动后我完全无法进入Ubuntu。在BIOS设置、启动顺序或任何地方都找不到它的踪迹。
请帮忙解决。

enter image description here

硬盘设置:

enter image description here

卷类型: 输入图像描述

2你选择了哪些选项?是在Windows 10旁边安装还是其他方式?你可以创建一个1或2GB的/boot分区,然后在底部选择引导加载程序将被安装的分区。 - kannzzmm2
2你使用UEFI还是传统BIOS?请确保两个操作系统使用相同的模式。 - VidathD
1你需要使用“其他选项”而不是引导安装。你将被提示手动设置分区,并且需要设置引导标志(双击分区以指示//home的位置)。还应该有一个选择设备的地方,这个设备上有你的引导加载程序。这个设备应该是你同时拥有两个操作系统的EFI分区所在的设备。 - Nmath
1@kannzzmm2 我使用了“其他选项”。是的,我尝试过创建引导分区,并将其分配给(在Ubuntu安装的磁盘选择部分底部)。 - Salih
1@Nmath 从磁盘管理中可以看出,我的EFI是第三个分区。这可能是问题所在吗? - Salih
1请查看launchpad上的错误编号1173457、1396379、1702335。UEFI引导加载程序将会自动选择安装程序找到的第一个EFI,而不管你指定的是什么。请将自己添加到1396379的"Does this affect me"列表中。唯一解决这个问题的方法就是加大压力。 - ubfan1
2个回答

似乎这是一个EFI系统,所以请以EFI模式启动Ubuntu USB。在安装Ubuntu时,请将引导加载程序安装到EFI分区。 enter image description here 通常情况下,它是您的Windows安装磁盘上的第二个分区,格式为fat32,并且如果EFI分区是由Windows创建的,则应该有一个名为“Windows Boot Manager”的卷名称。

分配一个 /boot 分区应该可以解决问题,因为 GRUB 将在那里安装。

我设置了一个示例来测试和演示如何使用装有 Windows 10“2004”的 SSD 进行这样的操作,在末尾留出空闲空间供我们安装 Ubuntu。还有一个硬盘驱动器,在末尾留有空闲空间供您的 /home 分区使用。

  • 在开始安装之前,请在实时会话中使用“磁盘”应用程序确保您的空间可用。清理任何可能由于安装失败而创建的残留分区。小心不要意外删除 EFI 或与您的 Windows 安装相关的任何分区(MSR、恢复、系统)。

  • 启动安装程序,当您到达选项时选择“其他选项”。

手动设置您的分区:

双击您现有的 EFI 分区,并确保选择了“EFI 系统分区”。

EFI Partition Screenshot

创建您的引导分区并设置/boot挂载点。
(/boot也是内核模块的存放位置。除非您喜欢保留大量旧的内核版本,否则500MB的分区应该足够了。)

boot Partition Screenshot

创建根分区并设置/挂载点。

root Partition Screenshot

创建您的家目录分区并设置/home挂载点。

home Partition Screenshot

引导加载程序安装设备:

选择您的EFI分区所在的物理磁盘。在本示例中,它是/dev/sda 注意:它不是/dev/sda1,后者是EFI分区本身。

点击"立即安装"继续进行引导安装。


当你的BIOS引导到带有EFI分区的物理卷时,GRUB应该加载并允许你选择Windows或Ubuntu。
如果GRUB没有Windows选项,请启动你新安装的Ubuntu(不是live session),然后运行以下命令:
sudo os-prober

(为了验证Ubuntu能否找到Windows)
sudo update-grub

(更新/修复GRUB菜单)
这个答案已经使用Ubuntu 20.04安装媒体进行了测试。

Windows中标为“EFI系统分区”的磁盘(磁盘1分区3),在Ubuntu安装中列出的类型为“fat32”,而不是您屏幕上显示的“efi”。这是否表示有什么问题?也许是Ubuntu版本问题? - Salih
由于它被列为“fat32”,所以在安装过程中我没有看到“用作:EFI系统分区”的选项。我确实看到了一个“保留的BIOS引导”选项,但上次选择它并没有成功。虽然我还可以再试一次。 - Salih
@salih 你确定你正确地识别了你的EFI分区吗?你能在问题中添加一个Disks中的分区截图吗?你确定Windows是以UEFI方式安装的吗?UEFI是默认选项,但如果你从旧版本的Windows升级过来,或者如果你的BIOS中禁用了UEFI,或者你的磁盘没有格式化为GPT,那么你可能使用的是MBR。 - Nmath
我已经添加了磁盘和系统信息的截图。BIOS模式是UEFI。 - Salih