您尚未登录。

楼主 # 2021-08-12 15:56:15

memory
会员
注册时间: 2021-08-11
已发帖子: 482
积分: 458

Openwrt 开机运行脚本的方法

1. 修改 /etc/rc.local exit 0 之前添加你开开机运行的指令即可

比如开机挂载eMMC:

mount /dev/mmcblk1p1 /mnt/mmc
exit 0

2. 添加 /etc/init.d/demo

#!/bin/sh /etc/rc.common
START=99
STOP=15

start(){
    echo start demo
    helloword &
}

stop(){
    echo stop demo
}

restart(){
    echo restart demo
}

enable(){
    echo enable demo
}

disable(){
    echo disable demo
}

或者:

#!/bin/sh /etc/rc.common

START=99 # 执行的顺序,按照字符串顺序排序并不是数字排序
STOP=15
SERVICE=demo
PROG=/bin/demo
USE_PROCD=1 # 使用procd启动

# start_service 函数必须要重新定义
start_service()
{
    echo service demo start
    procd_open_instance  # 创建一个实例, 在 procd 看来一个应用程序可以多个实例
    # ubus call service list 可以查看实例
    procd_set_param command $PROG # mycode执行的命令是"/app/mycode", 若后面有参数可以直接在后面加上
    procd_set_param respawn # 定义respawn参数,告知procd当mycode程序退出后尝试进行重启
    # procd_close_instance # 关闭实例
}

离线

楼主 #1 2021-08-14 17:49:13

memory
会员
注册时间: 2021-08-11
已发帖子: 482
积分: 458

Re: Openwrt 开机运行脚本的方法

还要在 /etc/rc.d/ 加一个 Sxx 开头的软链接才行:

ln -s /etc/init.d/demo /etc/rc.d/S99demo

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn