如何选择 grub 默认操作系统条目而不将其固定为特定的内核版本?

如何选择 grub 默认操作系统条目而不将其固定为特定的内核版本?

我的计算机上安装了 Ubuntu 16.04、Ubuntu 18.04 和 Windows 10。我想更新 grub 菜单中条目的顺序,以便默认(第一个)条目是 Ubutnu 18.04。网上提供的解决方案建议手动将默认条目更改为具有特定内核版本的特定条目。但是,在更新内核后,我是否需要再次更改顺序以将最新版本放在最上面?

我注意到我有这种“通用”条目(第一个条目,称为“Ubuntu”),它始终加载 Ubuntu 16.04 的最新可用内核版本。我如何才能让 Ubuntu 18.04 拥有一个具有相同行为的条目并将其移至顶部?另外,有人可以解释一下这个条目是如何工作的吗?我在网上找不到任何相关信息。

附言:我尝试更改顺序并使用 Grub-customizer 保存,但实际上并没有改变它!而且,它似乎不一致,因为在第一个名为“Ubuntu”的条目中,当我单击编辑时,我发现它有这个部分“linux /boot/vmlinuz-4.18.0-25-generic”。因此,它似乎是指 Ubuntu 18.04 内核,但是当我从启动菜单打开相同的条目时,它会打开 Ubuntu 16.04。

谢谢。

答案1

sudo update-grub您上次运行时启动的发行版将成为1. Ubuntugrub 主菜单上的选项。

当 18.04 不是第一选项时,启动并运行它sudo update-grub,它就会成为第一选项。

笔记:如果系统更新安装了新内核,则会update-grub作为该过程的一部分自动运行。

答案2

我能够根据@解决这个问题吉韦尔克评论:

您的系统有一个活动的 MBR(每个驱动器,BIOS 将控制使用哪个驱动器),因此您必须使用 grub-customizer 或在拥有 MBR 的系统上进行更改。如果是 16.04,则在 18.04 中所做的更改将不会被使用,反之亦然。对 /boot/grub/grub.cfg 所做的更改将在下一次 update-grub(包括内核更新)中被覆盖,但对 /etc/default/grub 所做的更改不会丢失(即,这是进行更改的地方,但您需要运行 update-grub 才能看到复制到 grub.cfg 文件中的更改)。

因此,使用 Ubuntu 16.04 中的 Grub-customizer,由于它是拥有我驱动器上的 MBR 的系统,我能够重新排序条目,并且 Ubuntu 18.04 的通用条目“Ubuntu”已在条目列表中可用,所以我不需要选择特定的内核版本。

相关内容