首页 > 其他分享 >openwrt开发使用-增加启动脚本

openwrt开发使用-增加启动脚本

时间:2023-05-09 22:55:52浏览次数:40  
标签:脚本 启动 etc init myscript openwrt

前言

在使用openwrt时候我们会遇到增加自定义的开机启动任务活脚本,今天给大家分享一下openwrt中设置一个开机启动脚本的操作

作者:良知犹存

转载授权以及围观:欢迎关注微信公众号:羽林君

或者添加作者个人微信:become_me


openwrt启动脚本位置:

luci位置

http://192.168.1.1/cgi-bin/luci/admin/system/startup

ssh登录系统目录查看

ls /etc/init.d/,启动脚本的位置都在这里,增加也在此处增加即可

还有一处位置需要我们关注ll /etc/rc.d/,我们增加的脚本在enable之后,会在rc.d这个目录生成对应的一个软链接

增加开机启动脚本操作:

我们需要把增加的脚本放入/etc/init.d:

  • 例如增加一个脚本保存为 /etc/init.d/myscript

  • 将脚本设置为可执行文件,使用以下命令,chmod +x /etc/init.d/myscript

  • 将脚本添加到系统启动脚本中,使用以下命令,/etc/init.d/myscript enable

  • 如果想要在开机时立即启动脚本,可以使用以下命令,/etc/init.d/myscript start

  • 如果想要停止脚本,可以使用以下命令/etc/init.d/myscript stop

  • 如果想要重新启动脚本,可以使用以下命令/etc/init.d/myscript restart

  • 如果想要查看脚本的状态,可以使用以下命令,/etc/init.d/myscript status

一般来说,我们使用脚本直接执行就好,但是如果要符合openwrt自动启动的要求,这里还有书写规范,否则就会提示失败,如果自己脚本迟迟没有提示工作,可以用ps查看一下执行情况,下面就是一个执行失败的情况,这里可以看到一直错误退出 甚至连带着luci中系统启动项查看都出现了错误,luci都带不开。

脚本内容修改规范后如下:

#!/bin/sh /etc/rc.common
START=99
start(){
        echo "myscript is start"
}
 
stop(){
       echo "myscript is stop"
}
restart(){
        echo "myscript  is restart"
}

注意:在 OpenWrt 中,系统启动脚本的顺序是根据文件名的字母顺序来决定的,因此您可以通过修改START对应的数字来调整脚本的启动顺序。

这时候再来重复之前操作: /etc/rc.d/查看,可以看到myscript已经形成软链 同时在http://192.168.1.1/cgi-bin/luci/admin/system/startup也可以看到这个选项

结语

这就是我自己在openwrt增加自启动脚本的分享。如果大家有更好的想法,也欢迎大家加我好友交流分享哈。


作者:良知犹存,白天努力工作,晚上原创公号号主。公众号内容除了技术还有些人生感悟,一个认真输出内容的职场老司机,也是一个技术之外丰富生活的人,摄影、音乐 and 篮球。关注我,与我一起同行。

                              ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧  END  ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧

推荐阅读

【1】jetson nano开发使用的基础详细分享

【2】Linux开发coredump文件分析实战分享

【3】CPU中的程序是怎么运行起来的 必读

【4】cartographer环境建立以及建图测试

【5】设计模式之简单工厂模式、工厂模式、抽象工厂模式的对比

本公众号全部原创干货已整理成一个目录,回复[ 资源 ]即可获得。

标签:脚本,启动,etc,init,myscript,openwrt
From: https://www.cnblogs.com/conscience-remain/p/17386604.html

相关文章

  • Windows 服务失败自启动
    先上bat文件@echooffrem定义循环间隔时间和监测的服务:setsecs=90setsrvname=%1echo==%1说明调用第一条参数,也可以在这里直接写服务名称==echo.echo========================================echo==查询计算机服务的状态,==echo==......
  • shell脚本实现人机石头剪刀布游戏
    shell脚本实现人机石头剪刀布游戏#!/bin/bash#game=(石头剪刀布)num=$((RANDOM%3))#computer=${game[$num]}#通过随机数获取计算机的出拳#出拳的可能性保存在一个数组中,game[0],game[1],game[2]分别是3中不同的可能echo"请根据下列提示选择您的出拳手势"echo"1.......
  • 【数据库测试】【shell脚本】查询同一个SQL执行多次,并统计每次耗时
    场景说明在数据库查询中会常见coldrun与hotrun,hotrun是指将同一个SQL连续运行多遍。运行脚本创建一个run.sh直接复制如下脚本-注意修改数据库的连接IP与密码等-queries2.sql存放查询的SQL,请将queries2.sql文件与run.sh放在同一个目录下,若不在同一个目录,注意改SQL的文件......
  • KingbaseES V8R6 集群运维案例--麒麟系统bug导致sys_monitor.sh无法启动集群
    案例说明:麒麟信安操作系统,在部署了KingbaseESV8R6集群后,sys_monitor.sh在启动集群时,启动数据库服务失败,导致集群无法正常启动。后连接现场分析发现,此环境只要通过ssh或sys_securecmd工具远程启动数据库服务都会失败。操作系统版本如下:适用版本:KingbaseESV8R6一、问题现象......
  • citect使用CitectVBA脚本获取本机IP地址
    这是我在新浪写过的一个笔记,在这里也记录一遍。新浪博客地址citect使用CitectVBA脚本获取本机IP地址_来自金沙江的小鱼_新浪博客(sina.com.cn)最近现场计算机上需要获取IP地址来做一些功能,简单得查询了一下网络,还是很好实现的。新建一个citectVBA函数FunctionGetIPAddress()......
  • 分享一个提高运维效率的 Python 脚本
    哈喽大家好我是咸鱼,今天给大家分享一个能够提升运维效率的python脚本咸鱼平常在工作当中通常会接触到下面类似的场景:容灾切换的时候批量对机器上的配置文件内容进行修改替换对机器批量替换某个文件中的字段对于Linux机器,咸鱼可以写个shell脚本或者直接批量使用sed命......
  • keepalived自带版本比较高,出现启动后主备都绑定了vip的情况
    解决办法单播模式些特定环境下不允许发送组播,造成备服务器无法收到p包,就比如某些云服务器吧,默认会禁止组播。可以通过单播的方式解决.单播示例配置:注意此语法在keepalived1.2.11版本以上支持unicastsrcip192.168.1.21###(本地IP地址)unicastpeer{192.168.1.22##(......
  • shell脚本发送多种curl命令
    foridin{1..5}dosh-c'curl-l-H"Content-type:application/json"-XPOST"http://127.0.0.1:8909/common/amethod?visitId=1874747&visitNum=1279367&paramCode=123"'&echo"\nstart$id:1"sh-c'......
  • keepalived 发生异常进行主备切换的notify.sh脚本
    notify.sh#!/bin/sh#########DESC###########keepalive切换告警提示##########################配置文件和手机号码配置config_file="/etc/keepalived/hostinfo.cfg"alert_user_file="/etc/keepalived/alert_user.cfg"keepalive_config_file="/etc/keepaliv......
  • Windows Server tomcat注册成服务(注册成服务后启动tomcat,war不自动解压)
    配置环境变量创建一个变量名为:CATALINA_HOME,变量值为:tomcat解压文件的位置,例如   F:\apache-tomcat-7.0.65变量名path下,后面添加  ;%CATALINA_HOME%\bin\;cmd打开命令窗口再打开tomcat文件夹下的bin目录,里面有一个service.bat  将这个文件拖动到命令窗口中......