UCI (Unified Configuration Interface) – 技术参考资料

UCI 是一个用 C (shell script-已封装) 写的功能组件,为了 集中化 管理运行OpenWrt系统的设备的配置文件。 UCI 是在OpenWrt历史版本 White Russian 中存在的基于 NVRAM 的配置文件的 替代版本 和 其附带的标准配置文件程序的 封装, 例如 /etc/network/interfaces/etc/exports/etc/dnsmasq.conf/etc/samba/samba.conf 等。

UCI 配置文件存在于 /etc/config/
它们的文档信息可以在OpenWrt-Wiki中查看 UCI 配置文件.

他们可以通过任何文本编辑器、命令行功能组件 uci 、各种编程API (类似 Shell, Lu 和 C)实现更改。 luci这中网页用户界面就是用Lua对它们进行操作的。

  • libuci 是一个用 C写的小型库;
    • libuci-lua 是一个为 Lua 写的UCI插件库,它在 luci 被使用;

他们都包含在UCI的git仓库中。

主要功能是由 uci and libuci这两个包提供的。libuci-lua 包也是可用的。

包名大小(字节)描述
uci 7196 统一配置接口 (UCI) 的功能组件
libuci 18765 统一配置接口 (UCI) 的C语言库
libuci-lua ~6000 C语言库文件的LuaLua插件库, 例如 luci就用到了这个库
 

uci

路径/文件文件类型描述
/sbin/uci 二进制文件/binary uci 的可执行文件
/lib/config/uci.sh shell脚本/Shell Script /sbin/uciShell脚本可用的封装

libuci

路径/文件文件类型描述
/lib/libuci.so 符号链接/symlink libuci.so.xxx 的符号链接
/lib/libuci.so.2011-01-19 二进制文件binary 库文件

libuci-lua

路径/文件文件类型描述
/usr/lib/lua/uci.so 二进制文件/binary 库文件

对于喜欢 Lua , 在你的代码中通过 libuci-lua这个包来操控 UCI 。 只需在安装这个包,然后在你的Lua代码中写上

require("uci")

 

posted @ 2020-12-28 17:28  LiuYanYGZ  阅读(834)  评论(0编辑  收藏  举报