OpenWrt中文网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 21266|回复: 16
打印 上一主题 下一主题

Atheros芯片DD-WRT借用OpenWrt的packages安装python、goagent实例教程

[复制链接]
跳转到指定楼层
1#
fastpace 发表于 2013-7-12 15:36:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fastpace 于 2014-9-11 14:37 编辑

上一篇刚捣鼓完OpenWrt上安装goagent:《OpenWrt安装goagent实例教程》http://www.openwrt.org.cn/bbs/fo ... hread&tid=14193

手头还有个Buffalo WZR-HP-AG300H,配置如下:
  1. CPU         Atheros AR7161
  2. CPU Speed         680 MHz
  3. Flash ROM         32 MB
  4. RAM         128 MB
  5. Radios         1x 2.4 GHz / 1x 5Ghz
  6. WLAN Support         A/B/G/N
  7. WLAN Max Speed         300 mbps
  8. Antenna Location         2x fixed external
  9. Switch         4x LAN + 1 WAN Gigabit ports
  10. 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修改权限也不行。安装出现信息如下:
  1. nstalling package uclibc-opt_0.9.28-13_mipsel.ipk ...
  2. Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
  3. uclibc-opt_0.9.28-13 100% |************************************************************************************************|   832k  0:00:00 ETA
  4. Updating /opt/etc/ld.so.cache
  5. /tmp/postinst: line 6: /opt/sbin/ldconfig: Permission denied
  6. Installing package ipkg-opt_0.99.163-10_mipsel.ipk ...
  7. Connecting to ipkg.nslu2-linux.org (140.211.169.161:80)
  8. ipkg-opt_0.99.163-10 100% |************************************************************************************************| 75850   0:00:00 ETA
  9. optware-install.sh: line 90: /opt/sbin/ldconfig: Permission denied
  10. optware-install.sh: line 91: /opt/bin/ipkg: Permission denied
  11. optware-install.sh: line 92: /opt/bin/ipkg: Permission denied
  12. optware-install.sh: line 93: /opt/bin/ipkg: Permission denied
  13. 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、创建软件安装目录
  1. cd /jffs
  2. mkdir /jffs/opt
  3. mount -o bind /jffs/opt /opt
复制代码
3、创建个配置文件目录此步骤非必须,如果jffs空间在8.8M以下可以不装)
  1. mkdir /jffs/etc_jffs
  2. cp -a /etc/* /jffs/etc_jffs/
  3. 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。如果此步骤省略,安装软件时就稍微麻烦了些,得像这样运行
  1. opkg -f /jffs/opkg.conf update
  2. opkg -f /jffs/opkg.conf install xxxxx
复制代码
运行每条opkg命令都得跟上配置文件路径。

4、安装opkg
  1. cd /tmp
  2. wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/opkg_618-3_ar71xx.ipk
  3. ipkg -d /opt install opkg_618-3_ar71xx.ipk
复制代码
这里可能会出现一堆错误,类似于
  1. ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
  2. You probably want to run `ipkg update'
  3. 。。。。
  4. Unpacking opkg...Done.
  5. Configuring opkg...Done.
复制代码
这些错误不用理会。

5、创建opkg配置文件
  1. cat > /etc/opkg.conf << EOF
  2. src/gz attitude_adjustment http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages
  3. dest root /opt
  4. dest ram /opt/tmp
  5. lists_dir ext /opt/tmp/var/opkg-lists
  6. EOF
复制代码
如果你忽略了第3步,那么将配置文件创建到其他目录,比如
  1. cat > /jffs/opkg.conf << EOF
  2. src/gz snapshots http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages
  3. dest root /opt
  4. dest ram /opt/tmp
  5. lists_dir ext /opt/tmp/var/opkg-lists
  6. EOF
复制代码
至此opkg就安装完成了,一些openwrt上的软件也可以安装到dd-wrt上,是不是很爽?

6、测试
运行opkg update(如果忽略第3步,则运行opkg -f /jffs/opkg.conf update)测试一下
  1. root@DD-WRT:/jffs# opkg update
  2. Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/Packages.gz.
  3. Updated list of available packages in /opt/tmp/var/opkg-lists/snapshots.
复制代码
像这样就表示正常了。

7、安装python
确定opkg没有问题就可以安装python
  1. wget http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/packages/libc_0.9.33.2-1_ar71xx.ipk
  2. opkg install libc_0.9.33.2-1_ar71xx.ipk
  3. opkg install python pyopenssl python-openssl
复制代码
python安装后测试一下,运行python,然后ctrl+D退出:
  1. root@DD-WRT:/jffs# python
  2. Python 2.7.3 (default, Mar 14 2013, 12:12:59)
  3. [GCC 4.6.3 20120201 (prerelease)] on linux2
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>>
复制代码
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,脚步内容如下:
  1. #!/bin/sh

  2. mount -o bind /jffs/etc_jffs /etc
  3. mount -o bind /jffs/opt /opt
  4. (python /jffs/goagent/local/proxy.py > /dev/null 2>&1) &
复制代码
然后修改权限:
  1. chmod 755 /jffs/mount_opt.sh
复制代码
回到dd-wrt的web,在管理》命令中输入:
  1. #!/bin/sh

  2. sh /jffs/mount_opt.sh
复制代码
如下图

然后点击“保存为开机指令”

不会使用vi的可以直接将
  1. #!/bin/sh

  2. mount -o bind /jffs/etc_jffs /etc
  3. mount -o bind /jffs/opt /opt
  4. (python /jffs/goagent/local/proxy.py > /dev/null 2>&1) &
复制代码
保存为开机指令。

重启一下路由,重新登陆控制台,查看一下进程是否启动
  1. root@DD-WRT:/jffs# ps |grep python
  2. 4011 root     17328 S    /opt/usr/bin/python /jffs/goagent/local/proxy.py
  3. 11517 root      1044 S    grep python
复制代码
以上步骤看起来比较多,实际上被我分得比较细,安装起来还是很简单的。


本方法在
BrainSlayer-V24-preSP2  r21061
BrainSlayer-V24-preSP2 r23320-fix

测试通过,BrainSlayer-V24-preSP2 r24461测试未通过, 其他版本尚未测试

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏10 分享分享
2#
jzmno1 发表于 2013-8-5 09:24:29 | 只看该作者
感谢大大
3#
wangzhenyu1260 发表于 2013-8-13 20:47:44 | 只看该作者
ddwrt刷的是什么版本?
4#
 楼主| fastpace 发表于 2013-8-14 15:15:32 | 只看该作者
wangzhenyu1260 发表于 2013-8-13 20:47
ddwrt刷的是什么版本?

Latest development release
v24 preSP2 (Build 21061)
5#
cao10085 发表于 2013-8-15 09:12:54 | 只看该作者
不错,,最后那个教程好像哪里见过
再次感谢你的教程
6#
wangzhenyu1260 发表于 2013-8-16 12:44:40 | 只看该作者
测试可行,如果能智能翻墙就更好了
7#
山多多 发表于 2013-8-27 16:09:00 | 只看该作者
请问下7241的CPU能用71xx的packages来给DD安装东西吗?另外是否可以安装aria2呢?
8#
顿顿 发表于 2013-11-10 12:00:10 | 只看该作者
WNDR3700v4 通过 。。。。。。。。
9#
顿顿 发表于 2013-11-10 12:01:41 | 只看该作者
WNDR3700v4 通过 。。。。。。。。
问题是:
1. 重启 不能自动启动
2.  jffs默认没有权限
10#
★_own_Jぅ 发表于 2014-1-10 00:25:35 | 只看该作者
顿顿 发表于 2013-11-10 12:00
WNDR3700v4 通过 。。。。。。。。

我和你一个型号的,为什么我开启jffs2后剩余空间为0?
*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|OpenWrt中文门户. ( 湘ICP备10006320号

GMT+8, 2024-4-20 23:30 , Processed in 0.079480 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表