OpenWrt uci增加一个section

本文详细介绍了如何使用UCI命令在OpenWrt中进行配置文件管理,包括创建、添加节点、删除节点以及统计section数量。通过示例展示了如何操作firewall规则,并提到了uciset、ucidel和ucishow等关键命令的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.说明:<config> 指配置文件名,如dhcp,firewall,fstab等
  uci set <config>.<section>=<section-type> 增加一个节点到文件中
  uci set <config>.<section>.<option>=<value> 增加一个选项和值到节点中
  uci add_list <config>.<section>.<option>=<value> 增加一个值到列表中

2.示例
  touch /etc/config/test //创建一个配置文件test
  uci set test.first=config //创建一个节点first
  uci set test.first.name='abc' //添加option name及值'abc'
  uci show test //显示配置文件test里的内容
  #test.first=config
  #test.first.name='abc'
  uci commit //保存配置文件test
3.新增节点:   uci set firewall.test=rule # 这里是新增test section,注意是set而不是add
  uci add_list firewall.test.icmp_type='router-advertisement'   uci set firewall.test.target='DROP'   uci set firewall.test.src='wan'   uci set firewall.test.proto='icmp'   uci set firewall.test.family='ipv6'   uci commit firewall 4.删除节点   uci del firewall.test

5.统计同一<section-type>的分区个数
  uci set <config>.<section>=<section-type>
  <section-type>可以自定义名字
  root@OpenWrt:~# touch /etc/config/op_station
  root@OpenWrt:~# uci set op_station.1=station
  root@OpenWrt:~# uci set op_station.2=station
  root@OpenWrt:~# uci set op_station.1.mac='11:22:33:44:55:66'
  root@OpenWrt:~# uci set op_station.2.mac='12:22:33:44:55:66'
  root@OpenWrt:~# uci show op_station
  op_station.1=station
  op_station.1.mac='11:22:33:44:55:66'
  op_station.2=station
  op_station.2.mac='12:22:33:44:55:66'
  root@OpenWrt:~# uci commit op_station
  root@OpenWrt:~# uci show op_station | grep -w station | wc -l
  2
  root@OpenWrt:~# cat /etc/config/op_station
  config station '1'
        option mac '11:22:33:44:55:66'
  config station '2'
        option mac '12:22:33:44:55:66'

参考:https://blog.youkuaiyun.com/m0_37922443/article/details/103006846

### OpenWRT UCI 使用介绍 UCI(Unified Configuration Interface),即统一配置接口,是OpenWrt引入的一套用于管理和修改系统配置参数的工具集[^1]。这套工具使得用户能够通过一种简单而标准的方式去调整路由器的各项设置,包括但不限于网络配置、无线配置以及系统信息配置。 #### 主要特点 - **集中化管理**:所有的配置项都集中在`/etc/config/`目录下的多个文件中; - **易于使用**:提供了一组命令行工具来简化对这些配置文件的操作; - **跨平台兼容性**:不仅支持shell脚本调用,还提供了C语言API供开发者集成到应用程序里[^2]; #### 配置结构解析 每一个`.conf`结尾的文件代表一类特定的服务或功能模块,并遵循如下格式: ```plaintext config 'section_type' ['instance_name'] option 'option_key' 'value' ``` 这里`section_type`定义了一个逻辑单元比如wan口连接或者dhcp服务实例;而`option_key=value`则是具体选项及其对应的取值。 #### 实际操作指南 为了展示如何利用UCI来进行实际配置工作,下面给出几个常见的例子: ##### 查看现有配置 可以通过执行简单的命令查看当前已有的设定情况: ```bash uci show network.lan ``` 这条语句将会返回有关LAN端口的所有属性列表。 ##### 修改IP地址分配模式 假设想要把局域网内的设备由静态指定改为自动获取,则可按照以下步骤完成更改: ```bash uci set network.lan.proto='dhcp' uci commit network ``` 上述两条指令先是设置了协议类型为动态主机配置协议(DHCP),接着提交变更使之生效。 ##### 添加新的WiFi接入点 对于希望创建额外Wi-Fi热点的情况来说,可以参照此流程: ```bash uci add wireless wifi-iface uci set wireless.@wifi-iface[-1].device='radio0' uci set wireless.@wifi-iface[-1].network='lan' uci set wireless.@wifi-iface[-1].mode='ap' uci set wireless.@wifi-iface[-1].ssid='NewSSIDName' uci set wireless.@wifi-iface[-1].encryption='psk2+ccmp' uci set wireless.@wifi-iface[-1].key='YourPasswordHere' uci commit wireless ``` 这段代码片段展示了怎样新增一个名为`NewSSIDName`的安全型访问节点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值