在dd-wrt路由器上使用Optware软件包和启动脚本

时间:2014-02-26 22:47:45

标签: linux embedded-linux dd-wrt

我正在尝试在我的dd-wrt路由器(Buffalo WZR-HP-AG300H)上运行一个mumble服务器(umurmur)。我在设备上刷了一个最近的dd-wrt社区版本(SVN Rev。:23320),里面有一个Atheros CPU。

之后,我使用这些指南(Guide 1Guide 2)将USB pendrive安装到文件系统中,并创建了可写目录。这是我的启动脚本保存到nvram(通过web-gui)

编辑:在与DD-Wrt一起使用之前,应该分配USB pendrive。

#!/bin/sh

sleep 5
insmod mbcache
insmod jbd
insmod ext3

mkdir '/mnt/part1'
mkdir '/mnt/part2'
mount -t ext3 -o noatime /dev/sda5 /mnt/part1   # /dev/sda5 -> partition on USB pendrive
mount -t ext3 -o noatime /dev/sda7 /mnt/part2   # /dev/sda7 -> partition on USB pendrive
swapon /dev/sda6                                # /dev/sda6 -> partition on USB pendrive

sleep 2
if [ -f /mnt/part1/optware.enable ];then 
#mount -o bind /mnt/part2 /mnt/part1/root
mount -o bind /mnt/part1        /jffs
mount -o bind /mnt/part1/etc    /etc
mount -o bind /mnt/part1/opt    /opt 
mount -o bind /mnt/part1/root   /tmp/root
else
exit
fi

if [ -d /opt/usr ]; then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib:/opt/lib:/opt/usr/lib:/jffs/usr/lib:/jffs/usr/local/lib
export PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/jffs/bin:/opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin
export IPKG_INSTROOT=/opt
else
exit
fi 

该脚本运行良好,我可以使用opkg来安装软件包。我也可以手动运行umurmur,但我正在努力制作umurmur autostart。我认识到放在/opt/etc/init.d/中的umurmur启动脚本需要startstop这样的参数,但似乎没有任何参数调用它们。

另一种描述here的方法也不起作用。

有没有人在解决这些问题?请帮忙!

2 个答案:

答案 0 :(得分:0)

Optware仅在Broadcom路由器上运行。你有一个Atheros芯片组。

摘自此页:Link

答案 1 :(得分:0)

我不清楚你提到的页面已经改变了 - 事实上我的设置与你的设置完全不同,但为了让脚本在启动时工作,我做了以下事情 -

  • mkdir -p / jffs / etc / config
  • 将脚本复制到/ jffs / etc / config目录中,将其重命名为.startup结束
  • chmod 755 /jffs/etc/config/scriptname.startup