peh*_*hrs 5 ubuntu kernel grub
我有许多系统需要修改内核 cmdline,添加一些选项。
目前我使用以下程序进行操作:
但是,我更愿意将此过程作为数据包安装的一部分自动化,并避免修改默认文件(因为这通常很脆弱)。
我想做的是:
/etc/grub.d/* 中有一堆脚本用于构建实际的菜单配置,但是,没有明显的方式与它们交互。生成配置的脚本似乎只读取 /etc/default/grub :(
如果有办法删除文件以修改默认内核命令行,有人可以启发我吗?
创建一个文件/etc/default/grub.d/myextraoption.cfg添加到您想要的变量(仅附加到它,并带有额外的空间。您要小心不要破坏或破坏那里的任何现有数据。):
GRUB_CMDLINE_LINUX_DEFAULT="${GRUB_CMDLINE_LINUX_DEFAULT} extra-option"
Run Code Online (Sandbox Code Playgroud)运行update-grub
。
您应该能够安全地将yourpackage.cfg文件包含在您的包中,而不会有被覆盖或破坏其他内容的风险。这些.cfg文件中的任何一个都包含在主默认文件之后,因此请注意这一点并进行相应的计划。
您几乎肯定还需要一个 postinst 脚本来在安装包时运行 update-grub,并且为了安全起见,因为它在/etc 中,您可能还应该将它包含在包的conffiles中。我认为,除非完成对包装的清除,否则这会留下它,因此经销商在这方面的选择。
作为参考, 第 157 行或附近的/usr/sbin/grub-mkconfig读取默认文件,包括与/etc/default/grub.d/*.cfg匹配的任何内容。在我看来,这种情况可能正是它这样做的原因。
我是基于 Trusty 写的。我不知道这仍然适用于多远的版本。我刚刚检查了 Lucid,它不存在。它就在 Precise 中。
归档时间: |
|
查看次数: |
2650 次 |
最近记录: |