安装rEFInd后部署Ubuntu,MacBook仅启动Ubuntu的问题求助
解决Ubuntu安装后rEFInd引导菜单消失的问题(2016款带Touch Bar MacBook Pro)
这是Linux安装后常见的引导覆盖问题——尤其是带Touch Bar的Mac,EFI引导优先级和NVRAM设置很容易被Ubuntu的安装程序修改。下面是一步步的修复方案,先从你当前能进入的Ubuntu系统操作开始:
第一步:在Ubuntu中重新部署rEFInd
挂载EFI分区
先找出你的EFI分区(通常是NVMe硬盘的第一个分区),打开终端运行:sudo fdisk -l找到标记为
EFI System的分区,路径一般是/dev/nvme0n1p1。接着创建挂载点并挂载:sudo mkdir /mnt/efi sudo mount /dev/nvme0n1p1 /mnt/efi重新安装rEFInd
如果你之前是通过Debian包安装的rEFInd,直接运行:sudo refind-install这个命令会自动把rEFInd重新部署到EFI分区,并尝试添加对应的引导项。
要是你之前是手动安装的rEFInd,先确认
/mnt/efi/EFI/refind目录存在且包含refind_x64.efi文件。如果没有,重新解压rEFInd压缩包,把refind目录复制到/mnt/efi/EFI/下即可。调整EFI引导优先级
Ubuntu安装后大概率把自己设为了默认启动项,用efibootmgr查看当前引导顺序:sudo efibootmgr -v找到标记为
rEFInd的引导项(比如Boot0000* rEFInd),把它设为第一启动项:sudo efibootmgr -o 0000,0001 # 这里0000是rEFInd的编号,0001是Ubuntu的编号,根据你的实际输出修改
第二步:若Ubuntu内操作无效,用macOS恢复模式修复
如果上面的方法没解决问题,就需要进入macOS恢复模式重置引导:
- 重启Mac,按住Command+R直到出现苹果标志,进入恢复模式。
- 打开顶部菜单栏的实用工具 > 终端。
- 先定位并挂载EFI分区:
找到diskutil listEFI类型的分区(比如disk0s1),挂载它:diskutil mount disk0s1 - 确认rEFInd文件存在后,设置它为默认引导:
要是看到ls /Volumes/EFI/EFI/refind/refind_x64.efi,就运行:bless --mount /Volumes/EFI --setBoot --file /Volumes/EFI/EFI/refind/refind_x64.efi --shortform - 重启Mac,应该就能看到熟悉的rEFInd引导菜单了。
额外提醒
- 带Touch Bar的Mac千万别删除EFI分区里的
Apple目录,这是macOS的核心引导文件。 - 后续更新Ubuntu时,grub可能会再次覆盖引导,记得更新后重新检查rEFInd的引导优先级,或者直接在rEFInd里添加Ubuntu的引导项,避免依赖grub。
内容的提问来源于stack exchange,提问作者ambitiose_sed_ineptum




