将 .dpkg-old 文件保存在 /etc/grub.d 中是否安全?

将 .dpkg-old 文件保存在 /etc/grub.d 中是否安全?

发布升级询问我是否要使用新版本或旧版本的/etc/grub.d/10_linux文件。我选择了新版本,但现在注意到旧文件(略微手动修补)仍然存在,名为10_linux.dpkg-old

我的理解是update-grub将运行 中的所有脚本/etc/grub.d。由于新版本的脚本中修复了一些错误10_linux,所以我不想update-grub运行10_linux.dpkg-old

我认为使用使旧脚本不可执行chmod将允许我将其保留在该文件夹中。但我想知道是否有其他机制阻止update-grub使用它。

参考我目前的理解:帮助.ubuntu

在执行 update-grub 命令期间会读取此目录中的脚本,并将其指令合并到 /boot/grub/grub.cfg 中。

grub.cfg 菜单中菜单项的位置由此目录中文件的运行顺序决定。以数字开头的文件将首先执行,从数字最小的文件开始。10_linux 在 20_memtest 之前运行,而 20_memtest 又在 40_custom 之前运行。如果存在以字母命名的文件,则这些文件将在以数字命名的文件之后运行。

自定义菜单条目可以添加到 40_custom 文件或新创建的文件中。根据其名称,40_custom 条目默认显示在菜单底部。以 06_ 开头的自定义文件将显示在菜单顶部,因为其字母数字排序会将其置于 10_ 到 40_ 文件之前。

只有可执行文件在执行 update-grub 时才会生成 grub.cfg 的输出。默认情况下,/etc/grub.d 文件夹中的文件是可执行的。

答案1

将 .dpkg-old 文件保存在 /etc/grub.d 中是否安全?

是的。

grub-mkconfig脚本将忽略匹配的文件名*~或者*/\#*\#以及匹配的文件名*.dpkg-*,或*.rpmsave|*.rpmnew,或README*|*/README*,或*.sig

如果您想确认这一点,可以使用命令来跟踪脚本bash -x $(which grub-mkconfig) -o /boot/grub/grub.cfg

相关内容