我希望能够从 Mac 上的外部硬盘启动完整的 Ubuntu 安装,并且我想这样做没有自定义启动菜单(例如重新索引)。
我已经看到了在 Mac 上创建 Live USB 的步骤这里,虽然它们运行良好,但我必须处理“Live CD”的怪癖(例如持久性/覆盖文件系统)。我希望能够像正常的 Ubuntu 安装一样启动它,并能够进行系统升级等。
我看到有人建议使用 rEFInd 之类的工具,但我不想弄乱我的 Mac 的 EFI 或主驱动器。由于 Live USB 无需修改即可正常启动(通过在启动时按住选项并选择它),因此似乎应该可以用同样的方式启动完整安装。
或者我做的事情没有意义或是不可能的?如果有帮助的话,这是一台 15 英寸 MacBook Pro Retina(2015 年中),我正在使用一个 USB 3.0 驱动器,声称读取速度为 180MB/s,写入速度为 50MB/s。
答案1
首先你必须了解两种启动模式之间的区别:
- 电喷-- 这是 Mac 的原生启动模式。要以 EFI 模式启动,您需要在EFI 系统分区 (ESP)称为
EFI/BOOT/bootx64.efi
(或EFI/BOOT/bootia32.efi
适用于具有 32 位 EFI 的旧款 Mac)。(Mac 也可以从 HFS+ 卷启动,但我不确定使用 HFS+ 从外部磁盘启动它们的规则。)通常,Ubuntu 的引导加载程序是 GRUB 2,但也可能是其他东西,包括 ELILO、rEFInd、gummiboot 甚至是 Linux 内核。请注意,在 EFI 的本机位深度下启动比在 EFI 模式下启动要容易得多 - 也就是说,如果您的 EFI 是 64 位,则应该安装 64 位 Ubuntu。理论上,如果您有 32 位 EFI,则应该安装 32 位 Ubuntu;但 Ubuntu 的 32 位映像不提供 EFI 支持,因此您必须完成大量额外的工作才能做到这一点。 - BIOS-- Apple 的 EFI 包含 BIOS 兼容层,又称为兼容性支持模块 (CSM) 或传统的启动支持。如果您准备的磁盘在 MBR(以及后续位置)中带有 BIOS 模式引导加载程序,则 Mac 应该可以引导它。Ubuntu 将 GRUB 2 设置为其默认的 BIOS 模式引导加载程序,但如果您愿意,也可以使用其他程序,例如 LILO 或 GRUB Legacy。如果您有 32 位 EFI,BIOS 模式安装可能会更简单。
目前还不清楚您尝试以何种方式设置系统,或者您是否知道您尝试了哪种方式。通常,Ubuntu 安装程序将尝试安装与其启动方式匹配的引导加载程序 - 也就是说,如果它以 EFI 模式启动,它会设置 EFI 模式引导加载程序,如果它以 BIOS 模式启动,它会设置 BIOS 模式引导加载程序。不幸的是,安装程序的启动模式并不总是很明显。最简单的方法是进入 shell 并查找名为 的目录/sys/firmware/efi
。如果它存在,则说明您以 EFI 模式启动;如果它不存在,则您可能以 BIOS 模式启动。控制启动模式可能很棘手。Mac 的内置启动管理器可能会为安装程序提供两个启动选项,但安装程序还必须为所需的启动模式做好适当的准备。您可能需要尝试使用多种工具来准备安装介质,以使其以您想要的方式启动。
此外,调整外部介质的引导加载程序安装可能很棘手,尤其是在 EFI 模式下。如果你想进行 EFI 模式安装,最好的办法是在“尝试不安装”模式下启动安装程序,然后键入ubiquity -b
。这将导致安装继续进行没有安装引导加载程序。然后您可以安装引导加载程序手动到外部磁盘的 ESP,使用文件名EFI/BOOT/bootx64.efi
(或bootia32.efi
)。不过,这需要您对引导加载程序有相当多的了解才能对其进行配置。最容易配置的可能是 rEFInd。我知道您说您不想使用它,但您可以安装到外部磁盘,甚至可以将其配置为隐藏其菜单,这样您就看不到它了。
BIOS 模式安装可能更容易设置;您主要需要小心地告诉安装程序将 GRUB 放在外部磁盘(可能/dev/sdb
)而不是内部磁盘上。这里的风险是外部磁盘可能无法启动,因为 Mac 对启动外部媒体非常挑剔,尤其是在 BIOS 模式下。