GRUB 2 - 避免不受限制的启动选项被内核更新覆盖

GRUB 2 - 避免不受限制的启动选项被内核更新覆盖

除了默认的 Ubuntu 选项外,我的所有 grub 选项都受密码保护。这是通过在 /boot/grub/grub.cfg 中的启动选项中添加“--unrestricted”来实现的,如下所述:

https://wiki.archlinux.org/index.php/GRUB/Tips_and_tricks#Password_protection_of_GRUB_edit_and_console_options_only

问题是每次更新 grub2 时,“--unrestricted”参数都会消失,我必须再次添加它。有什么方法可以让它永久生效吗?

谢谢你!

答案1

你必须编辑脚本产生 /boot/grub/grub.cfg,而不是该文件本身。

对于 Ubuntu 条目,请检查/etc/grub.d/10_linux并搜索输出的行menuentry。我的系统上的相关部分如下所示:

      echo "menuentry '$(echo "$title" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-$version-$type-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
  else
      echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
  fi

我认为其中第一个(带有echo "$title")应该用于所有“高级选项”,而第二行(带有echo "$os")似乎负责“正常”的 Ubuntu 条目。

您可以在此处插入其他选项,以便menuentry按照您希望在grub.cfg文件中显示的格式打印正确的行。

不要忘记sudo update-grub随后运行以从更改的脚本中重新生成配置。

其他相关文章:

相关内容