个性化编译openwrt(编译前更改lan.ipaddr,ssid,timezone,root密码 增加13信道)

编译OpenWrt之前 编辑 .config文件 搜索 “CONFIG_ATH_USER_REGD” 字符串
搜索到后把前面的 "#" 删掉 改成 CONFIG_ATH_USER_REGD=y
然后在去编译吧
编译好并刷机后,手动吧国家code代码改成CN 然后保存重启,就能看到13信道了,当然你也可以编译前设置国家code为CN,


综述:


  •          本人也是 op 菜鸟一枚,以下为一步一步测试验证的带血带泪的结果。验证通过才敢放出来。
  • 基本以更改配置文件为主,某些特殊情况需要更改功能脚本内容。
  • 以下均以 openwrt 位根目录。
  • 以下均写出最终生效方法,及尝试的方法


  •          更改 ssid

生效方法:


  •         
    更改 /package/mac80211/files/lib/wifi/mac80211.sh 文件,在文件最底下有一段类似与wireless 配置文件内容的代码。在这里可以更改成你想要的内容,例如:
           
  1. config wifi-device  radio$devidx
  2.         option type     mac80211
  3.         option channel  ${channel}
  4.         option hwmode        11${mode_11n}${mode_band}
  5. $dev_id
  6. $ht_capab
  7.         # REMOVE THIS LINE TO ENABLE WIFI:
  8.         option disabled 1

  9.         #删掉上面那一行或者将值从1改为0,则可以开启wifi
  10. config wifi-iface
  11.         option device   radio$devidx
  12.         option network  lan
  13.         option mode     ap
  14.         #option ssid     OpenWrt
  15.         option ssid mywifi
  16.         #更改为你想要的ssid
  17.         option encryption none
复制代码



尝试过的方法:
        在源码中搜索 wireless文件,然后将文件内的配置内容更改为想要的内容。

  •          更改时区 / 主机名
            
    更改 /package/base-files/files/etc/config/system配置文件
            
    主要是更改了 hostnametimezone,如下
          
    1. # add option zonename Asia/Shanghai by benlau
    2. # modify option timezone from UTC to CST-8 by benlau
    3.         option hostname myhost
    4.         option timezone CST-8
    5.         option zonename Asia/Shanghai
    复制代码


  •          更改默认登陆密码
            
    更改 /package/base-files/files/etc/shadow文件
            
    熟悉 linux的同学可能知道了,就是 linux用户的加密方式。哦,我不熟悉。。。
            
    我是在已有的路由上,通过 web更改了密码,比如改为 admin,然后在路由里看这个文件的内容的。路由里的目录在 /etc/shadow
            
    1. root:$1$wEehtjxj$YBu4quNfVUjzfv8p/PBo5.:0:0:99999:7:::
    复制代码
            
    以冒号为分隔符,第一个冒号之前为用户名,没敢改,用了其他策略实现 admin用户名
            
    第一个冒号和第二个冒号中间的为加密的密码,此处列出的内容为 admin
  •          更改 lan ip
            
    尝试过的方法 沿用更改配置文件的思路
            
    package/base-files/files/etc/config下有 network配置文件。
            
    在其他的 target目录下也又 network配置文件。比如用的是博通的芯片,则可能是在 target/linux/brcm47xx/base-files/etc,比如用的是 ar系列芯片,可能在 target/linux/brcm47xx/base-files/etc目录下。
            
    具体,可以在 openwrt目录下搜索 network文件名。
            
    network内容更改为你需要的内容,例如
            
    config        interface lan
            
    #更改 lan口获取 ip的方式为 static

        #optionproto        static
        optionnetmask        255.255.255.0
        #更改 lanip192.168.31.1
        optionipaddr 192.168.31.1
网上有人发帖,更改 package/base-files/files/etc/config是可以生效的,但是如果芯片厂家加了一些其他插件或者硬件内容之类的,则可能不生效。
我这边的案例就是,厂家在 op源码里加了 zigbee,并且 zigbee里也有相同的目录,并且通过查看编译日志发现, zigbee里的 zigbee/package/base-files/files/etc/config/network会覆盖 op里的。
那么问题来了,我同步更改 zigbee里的会不会剩下呢?
答案是不能。。。事实说明的。
生效的方法:
更改 /package/base-files/files/lib/functions/uci-default.sh
按需更改内容,如下
  1. ucidef_set_interface_lan() {
  2.         local ifname=$1

  3.         uci batch <<eof
  4. set network.lan='interface'
  5. set network.lan.ifname='$ifname'
  6. set network.lan.type='bridge'
  7. #更改lan口获取ip的方式为static
  8. set network.lan.proto='static'
  9. #更改lan口ip为10.1
  10. set network.lan.ipaddr='192.168.10.1'
  11. set network.lan.netmask='255.255.255.0'
  12. set network.lan.ip6addr='fd04:bd3:80e8:1::1/64'
  13. EOF
  14. }
复制代码


原文地址

http://www.right.com.cn/FORUM/thread-158971-1-1.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值