我想删除(非功能性)重复的 grub 安装。从另一台 PC 复制 Kubuntu 分区并尝试手动安装 grub 后,我最终得到了两种不同的 grub 安装。经过几个小时的尝试让它工作(在到达 grub 时无法摆脱“没有这样的设备”+“未知文件系统”错误),我只是放弃并从头开始重新安装 Kubuntu。所以现在我有这个:
$ efibootmgr
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0000,0002,0005,0001
Boot0000* Windows Boot Manager
Boot0001* Hard Drive
Boot0002* grub
Boot0005* ubuntu
Boot0002 grub 是有问题的。根据我所读到的内容,我可以删除它,efibootmgr -Bb 0002
但我相信这只会删除启动项,而不是实际的 grub 安装。在删除相应条目之前,如何确保 grub 已正确卸载?
编辑: 我找到解决办法了这里但它需要Windows(我有双启动)。保持这个问题的开放性,因为有人可能对仅 Linux 的解决方案感兴趣。
答案1
您可以检查是否有未使用/旧的内核软件包,这也可以有效地删除 grub 条目并释放硬盘空间。为此,您需要使用以下命令检查安装了哪些内核:
sudo dpkg -l | grep linux-image
然后您可以使用以下命令删除未使用/旧的内核映像(如果存在):
sudo apt-get remove linux-image-version_number
版本号作为您要删除的内核版本,通常,您需要在硬盘上至少有两个版本,以防您遇到更新的内核版本的问题。
/etc/default/grub
该文件包含用户配置时被视为正常的基本设置。选项包括显示菜单的时间、启动的默认操作系统等。具有管理员(root)权限的用户可以编辑此文件中的条目,并在更新时将其合并到 grub.cfg 中。安装时文件中包含的默认选项只是 GRUB 2 可以识别的一小部分变量。
虽然最常见的设置存在于默认文件中,但其他环境设置也可包含在该文件中。其中包括背景和主题等项目。预定义变量包含在以下命令中/usr/sbin/grub-mkconfig
并可以使用以下命令列出:
grep "export GRUB_DEFAULT" -A50 /usr/sbin/grub-mkconfig | grep GRUB_
对文件进行更改后,您必须运行以下命令以使更改永久生效:
sudo update-grub