在openwrt系统中设置开机自启服务

/etc/init.d目录下面就是系统加载的开机配置,文件夹中的每个文件都代表一个service。
每个配置可以设置START优先级,数字越大启动越靠后,如果有很多需要依赖网络或者USB之类的启动程序最好设置靠后一些,等其他程序启动了再启动。
系统读取etc/init.d/下的启动配置文件后,系统会根据start优先级,按照顺序执行每个文件的start()函数中的命令。

下面为myapp添加开启启动,假定myapp的路径是/opt/myapp

编辑/etc/init.d/mystart

输入以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/sh /etc/rc.common
START=99
start(){
/opt/myapp
}
stop(){
# kill your pid
kill -9 `ps | grep '/opt/myapp' | grep -v 'grep' | awk '{print $1}'`
}
restart(){
kill -9 `ps | grep '/opt/myapp' | grep -v 'grep' | awk '{print $1}'`
/opt/myapp
}

然后保存,退出

1
2
3
chmod +x /etc/init.d/mystart #设置可执行权限
/etc/init.d/mystart enable
/etc/init.d/mystart start