我怎样才能阻止 Ubuntu 成为 Mac 上的默认操作系统,或者至少在 Ubuntu 内部将 macOS 重置为默认操作系统?

我怎样才能阻止 Ubuntu 成为 Mac 上的默认操作系统,或者至少在 Ubuntu 内部将 macOS 重置为默认操作系统?

这似乎很烦人,当你在 Mac 上启动 Ubuntu 时,它会接管并成为默认操作系统,即使其他操作系统(例如 macOS 或 Boot Camp Windows)以前是默认操作系统。

我发现将 macOS 重新设置为默认启动操作系统的唯一方法是完全启动回 macOS(在启动时使用 Alt/Option 选择它),然后使用“系统偏好设置/启动盘”手动将 macOS 重新设置为默认操作系统,这似乎有点过分。

我实际上要发布我自己制定的命令行答案。

但我也非常高兴听到并赞成任何其他命令行或基于 GUI 的答案,这些答案可以在 Ubuntu 中将 macOS 重新设置为默认设置。(或者可以首先阻止 Ubuntu 接管默认设置!)

答案1

在最新版本的 Ubuntu(20.04)和当前版本的 macOS(Catalina 或 Big Sur)上,这可以重置为 macOS 并保持重置状态:

作为一次性步骤,将这一行添加到您的 Ubuntu.bashrc文件中:

alias osx='sudo efibootmgr -o 80,0 && reboot'

从那时起,当您想要重新启动进入 macOS 时,如果您还没有打开终端,请在 Ubuntu 中打开一个终端。

输入osx并按回车键。

如果需要,请输入您的密码。

这应该会将您重新启动回 macOS。如果您有多个 macOS,它将重新启动回之前选择的 macOS 默认设置。它是“粘性的”(macOS 保持设置为默认设置)。

没有从 macOS 返回 Ubuntu 的等效方法;像平常一样按住 Alt/Option 重新启动。但这没关系,因为一旦您选择了 Ubuntu,它就会保持选中状态;不像没有这种方法的 macOS。

答案2

安装 Ubuntu 后,EFI/BOOT/BOOTX64.EFI第一个 EFI 分区上会放置一个文件。这是可以从 Mac 启动管理器中选择启动的文件。此外,GRUB 文件EFI/ubuntu/grubx64.efi和安全启动文件EFI/ubuntu/shimx64.efi都放置在第一个 EFI 分区中。让固件启动这两个文件中的任何一个都将导致启动 Ubuntu。Mac 上的不同之处在于,启动EFI/ubuntu/shimx64.efi将导致将 Mac 配置为始终启动 Ubuntu。由于EFI/BOOT/BOOTX64.EFIEFI/ubuntu/shimx64.efi文件相同,使用 Mac 启动管理器启动 Ubuntu 将导致 Ubuntu 成为默认设置。

以下是避免 Ubuntu 成为默认设置的可能方法。

  • 复制EFI/ubuntu/grubx64.efiEFI/BOOT/BOOTX64.EFI。此解决方案的问题在于 Ubuntu 更新可能会撤消此更改。
  • 创建新的 EFI(或可能是 FAT 或 ExFAT 分区)并安装 UEFI shell。将此 shell 配置为启动EFI/BOOT/BOOTX64.EFI。这将导致 Mac 启动管理器中出现一个新项目。您可以更改此项目的图标和标签,以将其与其他选项区分开来。
  • 创建一个新的 EFI(或者可能是 FAT 或 ExFAT 分区)并安装 rEFInd。配置 rEFInd 以静默指示固件启动EFI/BOOT/BOOTX64.EFI。这将导致 Mac 启动管理器中出现一个新项目。您可以更改此项目的图标和标签,以将其与其他选项区分开来。尽管您可能希望使用 rEFInd 作为默认启动管理器,而不是内置启动管理器。

相关内容