在 Debian/Ubuntu 下管理 extlinux 配置文件

在 Debian/Ubuntu 下管理 extlinux 配置文件

Debian/Ubuntu下的事以前是

在 Debian 或 Ubuntu 上,如果您直接对文件进行更改/boot/extlinux/extlinux.conf,它们将被覆盖。

配置文件由名为 的程序重新生成extlinux-update,该程序会在您每次更新内核时自动运行。

然而,这种方法有其优点和缺点,extlinux-updateDebian/Ubuntu 的商品已消失那么如何维护 extlinux 配置文件呢?

这是我使用的,基于linux.cfg生成的文件extlinux-update

label UbuntuMate1804
        menu label UbuntuMate ^Bionic, kernel 4.15.0-20-generic
        menu default
        linux /boot/vmlinuz-4.15.0-20-generic
        append initrd=/boot/initrd.img-4.15.0-20-generic root=/dev/root ro

我所做的只是改变labelmenu label其余的一切都已替我处理好了。

现在,没有了extlinux-update,是不是意味着/boot/extlinux/extlinux.conf每次更新内核时我都需要记得更新我的文件?手动编辑是唯一的选择吗?那么当内核自动更新时怎么办?

答案1

Debian 中的内核软件包习惯于在位置vmlinuzvmlinuz.old为当前内核和前一个内核分别留下指向已安装内核的便捷符号链接。对于initrd.img和也是如此initrd.img.old。因此,您只需从中引用这些路径,即可extlinux.conf在启动时始终访问最新的两个版本。

该文件/etc/kernel-img.conf可用于进一步自定义此行为。例如,如果您将 extlinux 安装到 /boot,则可以通过添加以下行将符号链接放入 boot 中link_in_boot=yes

相关手册页是linux-update-symlinks(1)

相关内容