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

如何清理Fedora GRUB启动菜单中无效的LinuxMint内核条目?

如何清理Fedora GRUB启动菜单中无效的LinuxMint内核条目?

看起来你遇到的问题是Fedora的GRUB在扫描LinuxMint分区时,读取到了之前旧内核的残留文件或者包管理缓存记录,导致生成了一堆无效的启动条目。别担心,我们可以分两步解决这个问题:先彻底清理Mint分区里的旧内核残留,再重新生成Fedora的GRUB配置,让它只显示有效的启动选项。

第一步:彻底清理LinuxMint分区的旧内核残留

Fedora的os-prober工具会扫描其他系统的/boot目录和包管理记录,哪怕你之前在Mint里卸载了旧内核,可能还有一些残留文件没删干净,导致被误识别。

  1. 找到并挂载Mint的分区
    先通过磁盘工具确认Mint的根分区(或单独的/boot分区):

    sudo lsblk
    

    输出里找到标注为ext4、对应Mint系统的分区(比如/dev/sda3),然后挂载它:

    sudo mount /dev/sda3 /mnt
    # 如果Mint有单独的/boot分区,还要挂载它:
    # sudo mount /dev/sda2 /mnt/boot
    
  2. 删除旧内核的残留文件
    检查Mint的/boot目录里的内核和initramfs文件,只保留你需要的5.15.0-91-generic相关文件:

    # 列出所有内核文件,确认哪些是无效的
    ls /mnt/boot/vmlinuz-*
    ls /mnt/boot/initrd.img-*
    # 删除无效的旧内核文件(替换成你实际看到的无效版本号)
    sudo rm /mnt/boot/vmlinuz-5.15.0-xxx-generic /mnt/boot/initrd.img-5.15.0-xxx-generic
    
  3. 清理Mint包管理的残留记录
    如果你在Mint里卸载内核时没彻底清理dpkg的缓存,Fedora的扫描工具可能会读到这些残留记录:

    # 进入Mint的chroot环境,清理无效的内核包记录
    sudo chroot /mnt dpkg --purge linux-image-5.15.0-xxx-generic linux-headers-5.15.0-xxx-generic
    

第二步:重新生成Fedora的GRUB配置

清理完Mint的残留后,回到Fedora系统里,让GRUB重新扫描并生成正确的启动菜单:

  1. 清理Fedora本地的GRUB缓存
    先删除Fedora这边存储的os-prober扫描缓存,避免它复用旧数据:

    sudo rm -rf /var/lib/grub2/os-prober 2>/dev/null
    
  2. 重新生成GRUB配置文件
    根据你的启动模式(BIOS或UEFI),选择对应的命令:

    • BIOS启动
      sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      
    • UEFI启动(这是当前大多数新机器的模式):
      sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
      

可选:用图形化工具快速管理GRUB条目

如果你觉得命令行太麻烦,也可以用grub-customizer工具可视化删除无效条目:

  1. 安装工具:
    sudo dnf install grub-customizer
    
  2. 打开grub-customizer(需要sudo权限),找到那些无效的LinuxMint内核条目,选中后直接删除,点击「保存」即可。

完成以上操作后,重启系统,你的GRUB启动菜单就会只显示你想要的三个有效条目:Windows Boot Manager、LinuxMint 21.2 Cinnamon和Fedora Linux 39 (Cinnamon)了。

备注:内容来源于stack exchange,提问作者AdvApp

火山引擎 最新活动