Shell openwrt解析配置

Shell openwrt解析配置,shell,openwrt,Shell,Openwrt,我正在研究LuCI,想对它做些改变。所以我要做的第一件事就是弄清楚它是如何工作的。我知道LuCI配置文件由shell解析,然后uci系统将其用作设置,但很难获得工作流程。所以我不能抓住我需要的要点。我的问题是: 是的,我发现有一些全局变量是共享的 1.如何调试它以查看openwrt中的进程跟踪 2.shell解析/etc/config/中的配置文件,用于两种用途,一种用于LuCI接口,另一种用于驱动程序设置。但是我如何才能找到解析hostapd.conf的无线协议呢?似乎/lib/中的shell

我正在研究LuCI,想对它做些改变。所以我要做的第一件事就是弄清楚它是如何工作的。我知道LuCI配置文件由shell解析,然后uci系统将其用作设置,但很难获得工作流程。所以我不能抓住我需要的要点。我的问题是: 是的,我发现有一些全局变量是共享的

1.如何调试它以查看openwrt中的进程跟踪

2.shell解析/etc/config/中的配置文件,用于两种用途,一种用于LuCI接口,另一种用于驱动程序设置。但是我如何才能找到解析hostapd.conf的无线协议呢?似乎/lib/中的shell--functins.sh是相关的。但这只是一套功能——只是工具。shell在哪里可以找到这些函数的调用


有人能帮我吗?任何答复都将不胜感激。非常感谢。

web界面中的可配置参数:

  • 首先使用/usr/lib/LUA/lui/中的LUA脚本检查
  • 然后,它们被传递到一个共享库,该库由C编译并可由LUA调用
  • 然后写入/etc/config
  • 然后,如果应用,将调用/sbin/wifi脚本
  • 然后加载“functions.sh”以获得对UCI文件的shell支持
  • 然后调用“/lib/wifi/mac80211.sh”解析wifi网络 参数根据网络模式,mac80211.sh将调用 “/lib/wifi/wpa_supplicant.sh”或“/lib/wifi/hostapd.sh”完成 解析过程中,创建conf文件并启动hostapd守护进程
我想你要找的是/sbin/wifi、mac80211.sh和hostapd.sh


如果您想要调试,您可以在这些脚本中放入“echo”命令,或者使用shell“set-x”来跟踪它们。您可以从命令行直接输入/sbin/wifi,它将重新启动整个wifi并重新分析UCI文件。

您到底想实现什么?您是否看到了包括及其链接到的其他资源?实际上,我想将选项频道分为两个,即/etc/config/wireless中的channel1和channel2。因为802.11a和802.11na的工作频率与802.11b/g/ng不同。如果选择了错误的频率。路由器将关闭。但最初的用户界面只是将所有频率混合在一起。我只是想改变一下。但是我需要通道1和通道2被解析为选项通道。因此,我需要通过shell了解配置文件的解析过程。然后我可以进行一些更改,并使channel1和channel2顺利解析。我明白了吗?欢迎讨论。是的,Lua的配置文件由shell函数中的函数解析。实际上,/etc/config/中的所有配置文件都是shell,这是难以置信的,不是吗?然后,所有配置参数都将作为一些环境变量传递。然后使用functions.sh中的函数获取想要的函数。这是一个简单的解析过程。但是wireless还有更多,其配置将由/lib/netifd/netifd wireless hostapd.sh和wireless/mac80211.sh中的shell解析。/lib/wifi/mac80211.sh中的shell用于启动一些无线参数。谢谢你的回答。