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_a ... 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 snapshots
http://downloads.openwrt.org/attitude_a ... c/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_a ... c/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_a ... ackages.gz.
Updated list of available packages in /opt/tmp/var/opkg-lists/snapshots.
复制代码
像这样就表示正常了。
7、安装python
确定opkg没有问题就可以安装python
wget
http://downloads.openwrt.org/attitude_a ... 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
复制代码
以上步骤看起来比较多,实际上被我分得比较细,安装起来还是很简单的。