MW4530R 编译Openwrt全过程记录

1、安装Ubuntu14.04
2、安装编译Openwrt所需组件
sudo apt-get install g++ libncurses5-dev zlib1g-dev bison flex unzip autoconf gawk make gettext gcc binutils patch bzip2 libz-dev asciidoc subversion sphinxsearch libtool sphinx-common git
3、下载源代码
建立存放源代码的目录
mkdir Openwrt
sudo chmod 777 Openwrt
cd Openwrt
选择你想要的版本然后执行下载命令,下载结束会显示版本号:

Trunk版下载命令:
svn co svn://svn.openwrt.org/openwrt/trunk/

Backfire版下载命令:
svn co svn://svn.openwrt.org/openwrt/branches/backfire/

添加软件扩展包,将feeds.conf.default修改为feeds.conf:
cp feeds.conf.default feeds.conf

更新扩展,安装扩展:
scripts/feeds update -a
scripts/feeds install -a

4、配置
默认配置
make defconfig
配置菜单
make menuconfig

添加luci
LuCI--->Collections ---> <*> luci

添加luci的中文语言包
LuCI--->Translations ---> <*>luci-i18n-chinese

添加DDNS
LuCI--->Applications  ---><*>luci-app-ddns.

添加硬盘休眠
LuCI--->Applications  ---><*> luci-app-hd-idle

添加openvpn
LuCI--->Applications  ---><*> luci-app-openvpn

添加打印服务器
LuCI--->Applications  ---><*> luci-app-p910nd

添加QOS
LuCI--->Applications  ---><*> luci-app-qos

添加samba
LuCI--->Applications  ---><*> luci-app-samba

添加upnp
LuCI--->Applications  ---><*> luci-app-upnp

添加网络唤醒
LuCI--->Applications  ---><*> luci-app-wol

添加USB挂载
Base system  ---><*>block-mount

添加硬盘格式支持
Kernel modules  ---> Filesystems  ---><*> kmod-fs-ext4

添加UTF8编码
Kernel modules  ---> Native Language Support  ---><*> kmod-nls-utf8

添加USB扩展支持
Kernel modules  ---> USBSupport  ---> <*> kmod-usb-storage-extras

添加打印驱动
Kernel modules  ---> USBSupport  ---> <*> kmod-usb-printer

添加格式化工具
Utilities  --->Filesystem  ---> <*> badblocks

添加复位键支持
Utilities  ---> <*>restorefactory

添加transmission下载工具
Network  --->BitTorrent  ---> <*> transmission-daemon
Network  --->BitTorrent  ---> <*> transmission-remote
Network  --->BitTorrent  ---> <*> transmission-web

添加FTP
Network  ---> FileTransfer  ---> <*> vsftpd
Network  ---> FileTransfer  ---> <*> wget

添加blkid,可查看挂载硬盘UUID
Utilities  ---> disc  ---> <*> blkid

添加minidlna
Libraries  ---> <*> libffmpeg-mini
LuCI--->Applications  ---><*> luci-app-minidlna

5、编译
开始编译:

make

或者

make  V=99

或者

make -j V=99

    make是编译命令,V=99表示输出debug信息,V一定要大写,如果要让CPU全速编译,就加上 -j 参数,第一次编译最好不带-j参数。

编译过程保持联网(会从网上下载一些源码包),所以断网可能造成编译中断,编译所需时间与电脑CPU及网络环境有很大关系,第一次编译时间较久,快 则半小时长则2、3个小时,之后的编译所需时间较短。编译完成后会在源码文件目录出现bin文件夹(如trunk/bin/XXXX),如果你手里的路由 是原版固件需要刷OpenWrt需要选用XXX-factory.bin固件,如果路由已经刷了OpenWrt,选用升级固件XXXX- sysupgrade.bin升级用的,在升级界面升级即可。进到文件夹找到你需要的固件传出(通过邮箱、网盘、U盘等),开始刷机吧。

6、个性化设置

1.添加一键无线
在如下位置新建一个文件,文件名为01onoff
/target/linux/ar71xx/base-files/etc/hotplug.d/button/01onoff
内容如下:
#!/bin/sh

[ "$BUTTON" = "wps" ]&& [ "$ACTION" = "pressed" ] && {
SW=$(uci get wireless.@wifi-device[0].disabled)
[ $SW == '0' ] && uci setwireless.@wifi-device[0].disabled=1
[ $SW == '0' ] || uci setwireless.@wifi-device[0].disabled=0
wifi
}
保存后设置权限为0777

2.修改无线默认启动发射功率及加密
/package/kernel/mac80211/files/lib/wifi/mac80211.sh
修改内容:注意对齐,参考修改
在文件最后修改以下内容:
config wifi-device  radio$devidx
        optiontype     mac80211
        optionchannel  ${channel}
        optionmacaddr        $(cat/sys/class/ieee80211/${dev}/macaddress)
        optionhwmode        11${mode_11n}${mode_band}
$ht_capab
        # REMOVETHIS LINE TO ENABLE WIFI:

        optiondisabled 0
        optiontxpower  17
        option htmode HT40-
        option noscan 1
        option country CN

config wifi-iface
        optiondevice   radio$devidx
        optionnetwork  lan
        optionmode     ap
        optionssid        OpenWrt_$(cat/sys/class/ieee80211/${dev}/macaddress|tr "[a-z]""[A-Z]"|sed 's/://g'|cut -c7-12)
        optionencryption        psk2  --------------------加密方式
        optionkey          xxxxxxx  ----------------------密码(8位)
EOF
       devidx=$(($devidx + 1))
        done
}

3.修改路由器名字和时区
/package/base-files/files/etc/config/system
修改内容:
config system
        optionhostname        OpenWrt
        optionzonename      Asia/Shanghai
        optiontimezone        CST-8

4.默认启动DHCP
/package/network/services/dnsmasq/files/dhcp.conf
config dhcp lan
        optioninterface        lan
        option start        100
        option limit       150
        optionleasetime        12h
        optionignore 0  -----------------添加这个

5、当前Openwrt固件版本有个Bug,就是往DLNA目录下添加文件,不能自动更新。经验证可以用下面方法解决:

修改/feeds/oldpackages/multimedia/minidlna/minidlna.init在minidlna启动时添加-R参数
start() {
       ……
        service_start /usr/bin/minidlna -R -f "$MINIDLNA_CONFIG_FILE"
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值