更改 OpenWRT 下次启动的内核命令行参数

更改 OpenWRT 下次启动的内核命令行参数

我正在寻找一种从用户空间编辑内核命令行参数的方法,而无需在 U-Boot 处停止并手动修改值。我想更改下次启动的内核参数。例如,如果内核命令行包含名为example1=true' I would like to change it to the following boot toexample1=false 的参数

我正在使用基于 OpenWRT 的系统。

答案1

在Das U-Boot环境下快速搜索OpenWrt wiki...

“Das U-Boot 使用闪存上的少量空间(通常位于存储它的同一分区上)来存储一些重要的配置参数。”

具体来说...

bootargs:此变量的内容作为引导参数(也称为“命令行”)传递到 Linux 内核。

做出一些假设,但您应该能够从正在运行的内核编辑此配置文件。可能需要找到 u-boot 分区和配置文件所在的位置并将其挂载 R/W。此外,您还应该能够从 u-boot 命令行编辑此配置文件,如果您使用saveenv.

答案2

也许我在这里误解了,但据我所知,在运行内核后,您无法更改引导加载程序传递给内核的命令行参数,...如果您的意思是如何配置内核参数运行时,则该工具称为sysctl.

例如,如果您想更改:

sysctl -w kernel.stack_tracer_enabled=1

重新启动后这些更改将丢失。

相关内容