初衷是为了实现花语扫码和CNS能够实现N1重启后自行启动运行

以花语为例

尝试方法一:在openwrt的计划任务中直接添加

首先我们要知道花语的启动命令是

cd /root/ql/ && nohup ./JDC &

接着我们写一个sh脚本JDC.sh

#!/bin/sh 
sleep 10 \\等待10s后执行
cd /root/ql/ && nohup ./JDC &

在计划任务中添加

@reboot sh /root/ql/JDC.sh

测试结果发现,openwrt不支持@reboot的写法(@reboot代表开机运行)

尝试方法二:在rc.local文件上添加

直接编辑rc.local,把命令写在exit 0上面

cd /root/ql/ && nohup ./JDC &
exit 0

测试结果同样失败,openwrt直接不会运行,给了权限也一样

尝试方法三(成功):把启动文件放在/etc/init.d/中

创建文件myJDC

vi /etc/init.d/myJDC
#bin/sh /etc/rc.common
START=99 \\数值越大,越后启动
start(){
        cd /root/ql/ && nohup ./JDC &
        echo "JDC is start"
}

stop()
{
    killall JDC
    echo "JDC is stop"
}

给权限

chmod +x /etc/init.d/myJDC

设置自动启动

service myJDC enable

测试成功!
开机自启动CNS服务使用同样的方法,下面给出mycns文件

#bin/sh /etc/rc.common
START=99
start(){
        /etc/init.d/cns restart
        echo "cns is start"
}

stop(){
       /etc/init.d/cns stop
       echo "cns is stop"
}
restart(){

        /etc/init.d/cns restart
        echo "JDC is restart"
}

参考文章