如何使用 Ubuntu 在 Mac 上创建 HFS+ 分区:

如何使用 Ubuntu 在 Mac 上创建 HFS+ 分区:

我经常遇到这个问题,并测试了一些解决方案,希望这会有所帮助。最初,我的目标是在 Macbook Pro 上双启动 MacOS 和 Ubuntu,经过几次尝试后成功了,但它存在重大缺陷:

  1. 通过 Mac 启动菜单通过 USB 闪存驱动器安装 Ubuntu 时,Ubuntu 安装程序有一个令人讨厌的习惯,即用 Ubuntu EFI 设置* 替换原始 Mac EFI 设置*。

*EFI 设置 - 简单来说 - 允许您的设备在特定操作系统上启动。如果您删除 EFI 设置(= 硬盘上的 EFI 分区),您的设备将无法在此操作系统上启动,并且通常会导致启动时出现黑屏或类似情况。

  1. 通过 Ubuntu(例如通过 GParted)格式化硬盘以使其与 Mac 兼容(HFS、HFS+)并非易事,因为 Mac 软件包不可用:您必须搜索并安装它们。

基本上,我想尝试建立双启动系统(MacOS 和 Ubuntu)而不影响我的 EFI 设置。

换句话说:当我打开 Mac 时,我希望我的默认操作系统是 MacOS。如果我想切换到 Ubuntu,我想从启动菜单中选择它。

最终目标:通过在 BootCamp 上添加 Windows 进行试启动。

有任何想法吗?

我将在下面发布我的成功尝试。

答案1

默认情况下,可以通过选择标有 的图标从 Mac 启动管理器访问 Ubuntu EFI Boot。(在启动时按住option键即可访问 Mac 启动管理器。)启动管理器指示固件中的引导加载程序使用 EFI 分区中 FAT32 格式卷中的文件 file 进行引导/EFI/BOOT/BOOX64.EFI。此文件是存储在同一卷中的文件的精确副本。当文件执行/EFI/ubuntu/shimx64.efi时,BOOX64.EFI该软件更改 EFI 设置,使 Ubuntu 成为默认启动操作系统。 根据罗德·史密斯(rEFInd 启动管理器的当前维护者),该文件随后将执行转移到文件/EFI/ubuntu/grub64.efi(GRUB),该文件可用于启动 Ubuntu。


在 Mac 上安装 macOS/Windows/Ubuntu 三重启动确实会产生冲突,因为 Ubuntu 和 Windows 都会在原始 EFI 分区中安装一个文件/EFI/Boot/bootx64.efi。可以通过设置两个 EFI 分区来解决此冲突。

安装 macOS(OS X)和 Ubuntu 双启动的典型步骤如下。

  1. 安装 macOS。
  2. 如果需要,使用 Boot Camp 助手安装 Windows 10。
  3. 使用 macOSdiskutil命令缩小现有的 macOS 分区,为 Ubuntu 创建可用空间。可用空间是不属于分区的空间。
  4. 使用 Ubuntu 安装程序(通常是闪存驱动器)在可用空间中安装 Ubuntu。创建新分区时,请包含新的 EFI 分区。安装 Ubuntu 将覆盖原始 EFI 分区中的 Microsoft 文件。注意:覆盖的文件与原始 EFI 分区中的文件/EFI/Boot/bootx64.efi相同。/EFI/Microsoft/bootmgfw.efi
  5. 启动到 macOS,然后将/EFI/BOOT/EFI/ubuntu文件夹从原始 EFI 分区移动到新的 EFI 分区。之后,将文件复制/EFI/Microsoft/bootmgfw.efi/EFI/Boot/bootx64.efi原始 EFI 分区中。
  6. 启动到 Ubuntu,然后更新文件/etc/fstab以反映 Ubuntu 启动文件的 EFI 分区中的变化。

删除 Ubuntu 并保留 macOS(和 Windows)的典型步骤如下。

  1. 启动到 Ubuntu 的实时版本(通常是闪存驱动器)。
  2. 使用 Ubuntu live 自带的工具删除 Ubuntu 相关分区。该gdisk命令是一个典型的工具。
  3. 启动到 macOS,然后使用diskutil命令扩展现有的 macOS 分区以包含删除 Ubuntu 创建的可用空间。

使用 macOS 删除 Ubuntu 通常会导致无法启动 macOS。这可能是一个错误,也可能是 Apple 的一个小玩意。

答案2

第一次成功的尝试:

  1. 已下载Ubuntu 桌面(20.04 LTS)
  2. 使用适当的工具将 ISO 挂载到 USB 闪存驱动器上(balena蚀刻机就我而言)
  3. 关掉了我的 Mac。
  4. 插入我的 USB
  5. 打开我的 Mac,同时按住 Option/alt (⌥) 键以访问启动菜单。
  6. 手动安装 Ubuntu(默认选项建议擦除整个磁盘):在我的可用空间上为 Ubuntu 添加了一个 ext4 分区。
  7. 勾选“添加用于Wifi和图形的第三方软件”选项。

注意:关于如何使用 USB 闪存盘安装 Ubuntu 的教程有很多。这里有一个很好的教程:在 MacOS 上创建可启动的 USB 记忆棒

  1. 安装完成并重新启动了我的 Mac。

默认操作系统变成了 Ubuntu,而不是 Mac。要切换回 Mac,我必须进入启动菜单(开机时按住 Option/alt (⌥) 键)并选择 Macintosh。

答案3

第二次尝试。上下文:尝试通过添加 Windows新兵训练营尝试启动系统。它不起作用,并导致我的启动设置崩溃。

如何使用 Ubuntu 在 Mac 上创建 HFS+ 分区:

  1. 关掉我的 Mac
  2. 插入相同的闪存驱动器,但上面安装了 Ubuntu 21.10(稍后我会解释原因)。
  3. 按住 Option/alt (⌥) 键打开我的 Mac。
  4. 进入启动菜单时,显示的唯一选项是“EFI 启动”:EFI启动截图
  5. 选择安装 Ubuntu 选项,但只能访问磁盘分区选项。
  6. 选择并删除所有剩余分区(甚至包含约 200Mb 的 EFI)以仅保留两行:磁盘名称和下面的“空白空间”分区)。
  7. 退出安装菜单(点击“退出”而不是“继续”)。该软件将带您进入便携式 Ubuntu 操作系统。
  8. 启动终端(或按控制键+替代+电视键)。
  9. 输入sudo passwd以设置下一步的系统密码。
  10. 然后su - root将提示输入相同的密码并直接进入根系统。
  11. (选修的)sudo apt install gparted(或sudo apt-get install gparted)确保您已安装 GParted。
  12. 启动 GParted。
  13. 选择您的空磁盘,右键单击它并单击“新建”。
  14. 在文件系统下拉菜单中,您应该会发现其中有不少可用的,但与 Mac 兼容的可能会显示为灰色(HFS、HFS+)。
  15. 返回终端。
  16. sudo apt-get install hfsprogs hfsutils hfsplus安装缺少的软件包。
  17. 您可能会收到以下错误:“无法找到 hfsprogs”(在 20.04 LTS 上安装缺失的包几次尝试后,我尝试使用 21.10 版本进行安装)。
  18. 键入sudo add-apt-repository universe允许您的操作系统安装非官方软件包。
  19. 清除sudo apt-get update缓存并更新您的包。
  20. 再次尝试以下命令:sudo apt-get install hfsprogs
  21. (选修的)apt search hfs您可以通过输入并安装所需的软件包来找到其他与 HFS 相关的可用软件包。
  22. 返回 GParted 并使用 HFS+ 文件系统创建主分区。

预期成绩


现在我有一个与 Mac 兼容的 HFS+ 分区,我希望可以通过 Internet 恢复模式重新安装 MacOS。


编辑1

在 Internet 恢复模式下重新启动 Mac 后,磁盘实用程序不显示我的 HFS+ 分区。它只显示 Apple 磁盘映像。

奇怪,我以前使用 MacOS 时没有使用 FileVault(加密或设置加密的 APFS 分区)。


编辑2

我按住命令+选项+R当我打开 Mac 时,它确实下载了最新版本的 MacOS 磁盘实用程序,显示了我的 HFS+ 分区。

并不理想,没有解决问题(HFS +分区应该由旧版本的磁盘实用程序读取和操作)但这是一个很好的临时解决方法。

相关内容