为什么 Ubuntu 16.04.2 将加载程序安装在 Macbook Pro 硬盘上,尽管被告知要将其安装在 USB 硬盘上?

为什么 Ubuntu 16.04.2 将加载程序安装在 Macbook Pro 硬盘上,尽管被告知要将其安装在 USB 硬盘上?

Macbook Pro 12,1 搭载 OS X 10.11.6;使用 Ubuntu 16.04.2-desktop-amd64.iso 安装

尝试将 Ubuntu 16 安装到 USB 硬盘上,以便与我的 Macbook Pro 一起使用,我已经使用 Boot Camp 和 Windows 10 进行了设置。因此,我将安装程序放在 USB 记忆棒上,使用它进行启动,然后根据这张照片在分区管理器中设置内容。

我非常清楚地告诉这台愚蠢的计算机将引导加载程序放在 /dev/sdd1 上

(我为什么要添加 EFI 分区?因为它已经出错一次了,我想再试一次,这次拍照,并想知道在 USB 硬盘上添加 EFI 分区是否有助于它决定做正确的事情。无论如何,我是在这里提出问题的人。)

注意选择用于引导加载程序安装的设备。

我点击了Install Now

愚蠢的计算机没有提到它即将把东西复制到 /dev/sda1

一切似乎都正常,所以我点击Continue并让它安装。结果却是引导加载程序安装在了 上/dev/sda1,并且/dev/sdd1留空。

这造成了一些混乱:

  1. 连接 USB 硬盘后开机:Ubuntu 启动菜单出现,其中有一个 Ubuntu 选项和一个 Windows 10 选项(可用)。没有 OS X 的迹象

  2. 断开 USB 硬盘连接后开启:grub 文本控制台。我不知道如何使用它,因为当我输入时,help我得到了几页输出,它们立即滚动消失了,我觉得生活太短暂了

  3. 按住 Alt 键开机:出现标准 Apple 启动菜单,允许像以前一样选择 OS X 和 Windows。但即使连接了 USB 硬盘,也看不到 Ubuntu 的踪影

卸载装载机相当容易(挂载 EFI 分区并删除ubuntu那里的文件夹),现在我又回到了原来的位置。

但我还是有点困惑。我到底做错了什么?为什么加载器最终运行的是/dev/sda1而不是/dev/sdd1

答案1

(这并没有回答我直接的问题,但让它发挥作用比我想象的更烦人,所以我想我会发布一些笔记。)

最后,我似乎让它工作得让我满意。有了ubuntu安装程序添加到我的 Macbook 的 EFI 分区的文件夹、带有空 EFI 分区的 USB 硬盘驱动器以及 @oldfred 的评论,我按如下方式填充了 USB 硬盘驱动器的 EFI 分区:

  1. 在空的 EFI 分区的根目录中创建一个名为EFI
  2. ubuntu文件夹(安装程序添加的)复制到新EFI文件夹中
  3. EFI名为Boot
  4. 移入EFI/ubuntu/grubx64.efiEFI/ubuntu/MokManager.efiEFI/Boot
  5. 搬入,EFI/ubuntu/shimx64.efi并将Boot其重命名为BOOTx64.EFI
  6. 编辑EFI/ubuntu/grub.cfg,找到该search.fs_uuid行,然后从末尾删除设备说明符(因此它只读取search.fs_uuid <<GUID>> root)。

然后,连接后,我的 USB 磁盘就会出现在 Apple 启动菜单中。选择后,它会调出常规启动菜单,我可以选择Ubuntu它然后关闭。

最后一步,一旦启动并运行,我进行编辑/etc/fstab以安装 USB 磁盘的 EFI 分区,而不是 MBP 的分区。

(我不知道第 6 步是否重要,也不知道这些文件名是否区分大小写。这需要多次重启,而且我不想做太多额外的实验。)

相关内容