You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

efibootmgr删除Ubuntu 0000启动项后重启复现的解决方法

彻底清除残留的Ubuntu UEFI启动项(Parrot Security环境)

这种问题我碰到过好几次了——你用efibootmgr删了启动项但重启又回来,核心原因通常是EFI分区里还留着Ubuntu的引导文件,或者你的UEFI固件会自动扫描并恢复这些条目,再加上GRUB配置没同步更新。下面是一套彻底解决的步骤:

1. 删除EFI分区里的Ubuntu引导残留文件

UEFI固件会自动扫描EFI分区里的引导目录,只要ubuntu文件夹还在,就可能自动重建启动项。先清理这个源文件:

  • 首先找到你的EFI分区:
    sudo lsblk -f
    
    找类型为vfat、标签通常是EFIESP的分区,比如/dev/nvme0n1p1/dev/sda1
  • 挂载EFI分区:
    sudo mount /dev/你的EFI分区路径 /mnt
    
  • 查看并删除Ubuntu的引导目录:
    ls /mnt/EFI  # 确认是否存在`ubuntu`文件夹
    sudo rm -rf /mnt/EFI/ubuntu
    
  • 卸载分区:
    sudo umount /mnt
    

2. 用efibootmgr彻底删除UEFI启动项

现在再清理UEFI里的启动条目,这次因为源文件已经删了,不会再自动恢复:

  • 列出所有启动项,找到Ubuntu对应的编号:
    sudo efibootmgr -v
    
    比如你会看到类似Boot0001* Ubuntu的条目,记住编号0001
  • 删除该启动项:
    sudo efibootmgr -b 0001 -B  # 把0001换成你找到的实际编号
    
  • 再次确认已删除:
    sudo efibootmgr -v
    

3. 更新Parrot Security的GRUB配置

原来的GRUB配置文件可能还保留着Ubuntu的引导条目,需要重新生成:

sudo update-grub

这一步会自动扫描当前系统,移除不存在的Ubuntu条目,更新grub.cfg

4. 进入UEFI固件设置锁定启动顺序(关键步骤)

很多主板的UEFI固件有自动扫描引导文件的功能,就算你删了启动项,它可能还会尝试添加。所以要手动设置:

  • 重启电脑,按主板对应的按键进入UEFI设置(通常是F2、F10、Del或Esc,看开机提示)
  • 找到Boot Order(启动顺序)选项,把Parrot Security设为第一优先级
  • 找到UEFI Boot Entries(UEFI启动条目),确认没有Ubuntu的残留条目,如果有,手动删除
  • 关闭Fast Boot(快速启动)选项,避免固件跳过扫描直接加载旧配置
  • 保存设置并退出

5. (可选)如果仍有问题,重新安装GRUB到EFI分区

如果以上步骤都做了还是有问题,可能是GRUB的EFI引导文件损坏,重新安装一次:

sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=parrot
sudo update-grub

做完这些步骤,重启电脑应该就能直接进入Parrot Security,不会再出现GRUB错误界面了。

内容的提问来源于stack exchange,提问作者Terrence Munyunguma

火山引擎 最新活动