将自定义参数从 GRUB 传递到操作系统

将自定义参数从 GRUB 传递到操作系统

我的程序是 bash 脚本,在 Debian 的自定义 ISO 中运行。

我想要一个 GRUB 菜单项,它将一个参数从 GRUB 传递到操作系统,一个调试标志,这样我就可以测试程序,同时有一个非调试选项,而不需要更改代码。

例如,在 Clonezilla 中,您有几个参数,例如:

ocsdaemon_on="ssh"

它启动一个 ssh 服务器。

我会将参数debug或其他自定义单词放入我的 GRUB 中,然后放入我的程序中

DEBUG=<flag>

这可能吗?如何实现?

答案1

确保您的参数不与任何现有参数重叠,然后将其添加到内核命令行中。请参阅此处 Linux 内核文档中的列表: https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

debug对于您的程序来说不是一个好的选择:它已经用于启用内核调试。)

然后让你的程序读取/proc/cmdline并查找它。这基本上就是全部内容了。

相关内容