如何移除EFI中的Ubuntu启动项并恢复OpenBSD引导加载程序?
如何移除EFI中的Ubuntu启动项并恢复OpenBSD引导加载程序?
别急,咱们一步步来解决这个问题——毕竟你已经把NVMe0上的Mint清掉了,只是EFI启动项和Grub的残留在搞事情而已。
第一步:进入OpenBSD环境
首先你得能进到OpenBSD的系统里:
- 如果BIOS里还能找到OpenBSD的EFI启动条目,直接选它启动就行;
- 如果找不到,用OpenBSD的安装U盘/光盘引导,在启动菜单里选Shell进入命令行环境,这样就能操作磁盘了。
第二步:清理EFI分区里的Ubuntu残留
不管你是在正常系统还是Shell里,先挂载OpenBSD所在磁盘(NVMe1)的EFI系统分区(ESP):
mount /dev/nvme1a /mnt
然后删掉Ubuntu的EFI引导文件夹:
rm -rf /mnt/EFI/ubuntu
另外,别忘了检查一下你之前装Mint的NVMe0,它的ESP里可能也有Ubuntu的残留:
mount /dev/nvme0a /mnt2 rm -rf /mnt2/EFI/ubuntu umount /mnt2
最后卸载OpenBSD的ESP挂载点:
umount /mnt
第三步:重新安装OpenBSD的引导加载程序
接下来用OpenBSD自带的installboot命令修复引导,确保EFI能正确识别OpenBSD:
installboot -v /dev/nvme1c /usr/mdec/boot /usr/mdec/bootxx_efi
这里解释一下参数:
/dev/nvme1c是NVMe1整个磁盘的设备节点;/usr/mdec/boot是OpenBSD的主引导程序;/usr/mdec/bootxx_efi是适配EFI的引导加载器。
第四步:调整EFI启动顺序(可选但推荐)
现在咱们把OpenBSD设为默认启动项,先查看当前的EFI启动条目:
efibootorder
输出会类似0000:OpenBSD, 0001:Ubuntu这样的内容,把OpenBSD的编号设为第一个:
efibootorder 0000
如果Ubuntu的条目还在,直接删掉它更彻底:
efibootrm 0001
(注意替换成你实际查到的Ubuntu条目编号)
最后一步:重启测试
做完上面这些操作,重启笔记本应该就不会再弹出Grub提示符了,直接进入OpenBSD系统。
备注:内容来源于stack exchange,提问作者Kyle Willett
相关产品推荐
相关产品推荐

