关于 GRUB_DEFAULT 标题名称的 update-grub 警告

关于 GRUB_DEFAULT 标题名称的 update-grub 警告

将 GRUB_DEFAULT 设置为:

Ubuntu 18.04.1 LTS (18.04) (auf /dev/nvme0n1p2)

update-grub发出警告(3次),我不应该使用这个“旧标题”,而应该根据我的“版本”使用以下之一。

对于 2.00 之前的版本:

Advanced options for Ubuntu 18.04.1 LTS (18.04) (auf /dev/nvme0n1p2)>Ubuntu 18.04.1 LTS (18.04) (auf /dev/nvme0n1p2)

对于 2.00 或更高版本:

gnulinux-advanced-c40111ac-c9cb-43b2-b72b-e6d86975cd57>gnulinux---c40111ac-c9cb-43b2-b72b-e6d86975cd57

我以为这个警告表示 grub 版本带有“version”。所以我选择了后一种格式,因为我的 grub 是 2.02-2ubuntu8。

但它不起作用。当改回“旧标题”时,它又起作用了。

警告:请勿使用其他标题
您使用 »Ubuntu 18.04.1 LTS (18.04)(在 /dev/nvme0n1p2 上)« GRUB_DEFAULT
»Ubuntu 18.04.1 LTS (18.04)(在 /dev/nvme0n1p2 上)的高级选项>Ubuntu 18.04.1 LTS (18.04)(在 /dev/nvme0n1p2 上)«(针对 2.00 版)或
»gnulinux-advanced-c40111ac-c9cb-43b2-b72b-e6d86975cd57>gnulinux---c40111ac-c9cb-43b2-b72b-e6d86975cd57«(适用于 2.00 或更高版本)

为什么我不应该使用正常的“旧”标题?那么正确的标题是什么?或者我应该忽略此消息?

系统信息:

Linux htpc7even3 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:    18.04
Codename:   bionic

答案1

Grub 手册状态:

之前有文档记录了如何使用条目标题。虽然这仍然有效,但不建议使用,因为标题通常包含不稳定的设备名称,并且可能会被翻译

您的条目标题包含设备名称 ( /dev/nvme0n1p2)。如果您移除或添加驱动器,或者将现有驱动器重新连接到其他插槽,设备名称可能会发生变化。

在这种情况下,当您运行“update-grub”时,菜单项标题/boot/grub/grub.cfg将会更新,这将使默认值(保持不变)无效。因此您会收到警告,如果您愿意,您仍然可以使用它,并且知道自己在做什么,永远不要添加或删除驱动器。

建议使用不包含设备名称但包含要从中启动的分区的 UUID 的菜单条目 ID,这样更稳定。

您不需要使用两级标识符。我只是从中复制了我的第一个菜单项的标识符/boot/grub/grub.cfg并设置

GRUB_DEFAULT='gnulinux-simple-06a41c79-a7ff-4fd2-86eb-fb4f510bf31a'

然后运行sudo update-grub,静默完成(没有错误,没有警告),重启时也没有问题。

答案2

/etc/default/grub像这样编辑最容易……

sudo -H gedit /etc/default/grub


GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

sudo update-grub

这样,GRUB 会记住您最后选择的操作系统,并将继续重新启动到同一操作系统,直到您选择其他操作系统。

比尝试匹配文本名称或使用原始数字简单得多。

答案3

我一直以来的做法是完全匹配“Ubuntu 高级选项”Grub 菜单中显示的内容。因此,如果它看起来像这样:

在此处输入图片描述

我用

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 5.0.0-25-generic"

sudo update-grub运行时不会产生任何错误或警告。

答案4

在 Ubuntu(或任何衍生版本)中,您只需安装 grub-customizer(它位于存储库中)并打开它即可。然后选择“常规设置”,并在“预定义”中选择要启动的内核。保存。就这样。

相关内容