|
本帖最后由 fastpace 于 2014-9-11 14:37 编辑
上一篇刚捣鼓完OpenWrt上安装goagent:《OpenWrt安装goagent实例教程》http://www.openwrt.org.cn/bbs/fo ... hread&tid=14193
手头还有个Buffalo WZR-HP-AG300H,配置如下:- CPU Atheros AR7161
- CPU Speed 680 MHz
- Flash ROM 32 MB
- RAM 128 MB
- Radios 1x 2.4 GHz / 1x 5Ghz
- WLAN Support A/B/G/N
- WLAN Max Speed 300 mbps
- Antenna Location 2x fixed external
- Switch 4x LAN + 1 WAN Gigabit ports
- USB 1x USB 2.0
复制代码 配置相当不错,价格也贵啊 。入手后刷了DD-WRT十分稳定,因此不打算上OpenWrt,做家庭网关路由。128M的RAM不多跑点东西实在浪费,于是NAS、脱机下载、goagent都往上堆吧。其他rg100a-aa等路由器刷OpenWrt玩。
下面来谈谈ag300h上安装goagent的,要装goagent就必须装python,dd wrt官方是通过运行个optware-install.sh的脚步安装optware后来再安装python,可这方法对Atheros芯片没有用,一般都会报Permission denied这样的错误,即使使用chmod修改权限也不行。安装出现信息如下:- nstalling package uclibc-opt_0.9.28-13_mipsel.ipk ...
- Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
- uclibc-opt_0.9.28-13 100% |************************************************************************************************| 832k 0:00:00 ETA
- Updating /opt/etc/ld.so.cache
- /tmp/postinst: line 6: /opt/sbin/ldconfig: Permission denied
- Installing package ipkg-opt_0.99.163-10_mipsel.ipk ...
- Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
- ipkg-opt_0.99.163-10 100% |************************************************************************************************| 75850 0:00:00 ETA
- optware-install.sh: line 90: /opt/sbin/ldconfig: Permission denied
- optware-install.sh: line 91: /opt/bin/ipkg: Permission denied
- optware-install.sh: line 92: /opt/bin/ipkg: Permission denied
- optware-install.sh: line 93: /opt/bin/ipkg: Permission denied
- root@192:/opt#
复制代码 查了dd官方资料才知道,这方法对Atheros芯片不试用。Atheros芯片得手工安装,网上一般提供的是将软件安装在U盘,但我的ag300h有32M ROM,刷完系统后还有13.8M的空间,我就把软件都安装在这13.8M的空间上吧。
下面切入正题:
1、准备环境
进入dd-wrt管理界面》管理》管理,找到“JFFS2支持”,如下图勾选:
点击“应用”便启动了jffs。重新进入该页面或者控制台运行df -h查看一下jffs空间容量,如果大于7.5M就将软件安装在jffs上,如果小于7.5M最好安装在U盘上。安装U盘请参考:http://www.dd-wrt.com/phpBB2/viewtopic.php?t=86912
2、创建软件安装目录- cd /jffs
- mkdir /jffs/opt
- mount -o bind /jffs/opt /opt
复制代码 3、创建个配置文件目录(此步骤非必须,如果jffs空间在8.8M以下可以不装)- mkdir /jffs/etc_jffs
- cp -a /etc/* /jffs/etc_jffs/
- mount -o bind /jffs/etc_jffs /etc
复制代码 这里在/jffs/目录下创建了个etc_jffs(这里要注意千万别创建/jffs/etc,否则dd-wrt的web页面很多配置将显示成双份)目录,然后将/etc中所有文件都拷贝到这个目录,再用mount 覆盖掉/etc,这样/etc目录就变成可写目录。
为什么要mount /etc目录?这是因为我们要安装OpenWrt的opkg,而opkg默认读取配置文件是/etc/opkg.conf。如果此步骤省略,安装软件时就稍微麻烦了些,得像这样运行- opkg -f /jffs/opkg.conf update
- opkg -f /jffs/opkg.conf install xxxxx
复制代码 运行每条opkg命令都得跟上配置文件路径。
4、安装opkg- cd /tmp
- wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/opkg_618-3_ar71xx.ipk
- ipkg -d /opt install opkg_618-3_ar71xx.ipk
复制代码 这里可能会出现一堆错误,类似于- ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
- You probably want to run `ipkg update'
- 。。。。
- Unpacking opkg...Done.
- Configuring opkg...Done.
复制代码 这些错误不用理会。
5、创建opkg配置文件- cat > /etc/opkg.conf << EOF
- src/gz attitude_adjustment http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages
- dest root /opt
- dest ram /opt/tmp
- lists_dir ext /opt/tmp/var/opkg-lists
- EOF
复制代码 如果你忽略了第3步,那么将配置文件创建到其他目录,比如- cat > /jffs/opkg.conf << EOF
- src/gz snapshots http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages
- dest root /opt
- dest ram /opt/tmp
- lists_dir ext /opt/tmp/var/opkg-lists
- EOF
复制代码 至此opkg就安装完成了,一些openwrt上的软件也可以安装到dd-wrt上,是不是很爽?
6、测试
运行opkg update(如果忽略第3步,则运行opkg -f /jffs/opkg.conf update)测试一下- root@DD-WRT:/jffs# opkg update
- Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/Packages.gz.
- Updated list of available packages in /opt/tmp/var/opkg-lists/snapshots.
复制代码 像这样就表示正常了。
7、安装python
确定opkg没有问题就可以安装python- wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/libc_0.9.33.2-1_ar71xx.ipk
- opkg install libc_0.9.33.2-1_ar71xx.ipk
- opkg install python pyopenssl python-openssl
复制代码 python安装后测试一下,运行python,然后ctrl+D退出:- root@DD-WRT:/jffs# python
- Python 2.7.3 (default, Mar 14 2013, 12:12:59)
- [GCC 4.6.3 20120201 (prerelease)] on linux2
- Type "help", "copyright", "credits" or "license" for more information.
- >>>
复制代码 8、安装goagent
dd-wrt上安装goagent和Openwrt上一样,请看http://www.openwrt.org.cn/bbs/fo ... hread&tid=14193的第2点。
我是将goagent的客户端文件拷贝到/jffs/goagent/local/目录中。
9、设置开机启动
使用vi命令创建一个脚步,vi /jffs/mount_opt.sh,脚步内容如下:- #!/bin/sh
- mount -o bind /jffs/etc_jffs /etc
- mount -o bind /jffs/opt /opt
- (python /jffs/goagent/local/proxy.py > /dev/null 2>&1) &
复制代码 然后修改权限:- chmod 755 /jffs/mount_opt.sh
复制代码 回到dd-wrt的web,在管理》命令中输入:- #!/bin/sh
- sh /jffs/mount_opt.sh
复制代码 如下图
然后点击“保存为开机指令”
不会使用vi的可以直接将- #!/bin/sh
- mount -o bind /jffs/etc_jffs /etc
- mount -o bind /jffs/opt /opt
- (python /jffs/goagent/local/proxy.py > /dev/null 2>&1) &
复制代码 保存为开机指令。
重启一下路由,重新登陆控制台,查看一下进程是否启动- root@DD-WRT:/jffs# ps |grep python
- 4011 root 17328 S /opt/usr/bin/python /jffs/goagent/local/proxy.py
- 11517 root 1044 S grep python
复制代码 以上步骤看起来比较多,实际上被我分得比较细,安装起来还是很简单的。
本方法在
BrainSlayer-V24-preSP2 r21061
BrainSlayer-V24-preSP2 r23320-fix
测试通过,BrainSlayer-V24-preSP2 r24461测试未通过, 其他版本尚未测试 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|