Linux 开机自启动多个脚本程序
本篇文章讲解Linux 开机自启动程序
Linux开机自启动在项目中应用很常见,突然停电或者故障,程序总归要关掉的,如果手动去启动程序,比较麻烦,所以开机自启动是非常重要的一环。
在Debian或者Ubuntu中,开机之后会调用一个脚本文件:/etc/rc.local,所以在这个文件中写好要启动的程序即可。Debian linux发行版系统现在可能没有rc.local文件了,不过没有关系,直接在/etc文件下新建一个rc.local文件即可,开机就会运行该程序。
所以只要在该文件中直接启动你的程序即可,或者也可以启动一个脚本文件(.sh),在这个脚本文件中启动要启动的程序,下面就是rc.local文件内容的实例。
#!/bin/bash -elocation="/home/debian" #脚本路径cd $location$location/rc.sh$location/run.shexit 0
上面的rc.local文件中就另行启动了脚本文件(rc.sh)来运行自己的程序,以下就是rc.sh的内容,启动gateway程序。
#!/bin/sh
location=/home/debian/gateway20191211
echo $location
cd $locationfind $location/log -mtime +7 -type f |xargs rm -f
out=$(date "+%Y-%m-%d")".txt"
pwd
$location/gateway >> $location/log/$out
细心的朋友可能还发现其实上面rc.local运行了两个脚本,但是实际运行过程中只启动了第一个,这是因为第一个程序运行还没有结束,就不会运行第二个程序,所以这样基本上就不会个程序同时启动。
如果要同时启动两个程序,则需要这样来写脚本文件,将两个脚本文件相与。
#!/bin/bash -e
location="/home/debian" #脚本路径
cd $location
$location/run.sh & $location/GetPID.sh
exit 0
此外如果还需要设计一个进程看门狗,监控该程序是否运行,则可以这样来写脚本:(先获取进程PID,然后再监控该PID是否存在)
#!/bin/bashwhile true
doprocess=gateway #监控的程序运行名pid=$(ps -ef|grep $process |grep '/home/debian' | grep -v grep |awk '{print $2}')
echo $pidif [ $pid -ne 0 ]
then #如果程序PID在,则程序在运行echo `date`echo “pid is exitable!”
else #否则程序没有运行,需要启动程序 启动的程序在run.sh文中。echo `date`echo "pid isnot exitable!"sudo sh run.sh >> $(date "+%Y-%m-%d")".txt"
fisleep 15sdoneexit 0
该脚本一开机就运行,监控程序PID,如果发现没有,立即启动,15s检查一次。
Linux 开机自启动多个脚本程序相关推荐
- linux 开机自启动运行python脚本
供测试的python脚本testboot.py(确认你的python3路径二选一): #!/usr/bin/python3 with open('testboot.txt',"w" ...
- Linux开机自启动jar包详细操作,认真看完肯定可以完成
Linux开机自启动jar包脚本 有xshll和xftp的可以直接在Windows系统下创建一个txt文件贴上以下代码 #!/bin/sh export JAVA_HOME=你Linux系统下的jav ...
- linux开机自启动程序设置方法
linux如何开机运行自己的程序呢? 搞了几天终于搞定.... 1.首先在自己的工程文件里编写自启动shell文件,这是我的例子如下:文件名字(testudp.sh),可执行程序为tst_client ...
- Linux开机自启动脚本
Linux开机自启动脚本 方式一:/etc/profile.d/ 把对应需要启动的脚本程序放在/etc/profile.d/下 chmod +x /etc/profile.d/start-demo.s ...
- linux 程序加启动项,linux 让一个程序开机自启动并把一个程序加为服务
linux 让一个程序开机自启动并把一个程序加为服务 來源:互聯網 2016-05-27 08:31:00 評論 linux 让一个程序开机自启动并把一个程序加为服务 本文以tomcat7为例 首 ...
- linux springboot开机启动,SpringBoot 部署到Linux开机自启动和运行
前文 SpringBoot是一个强大的微服务框架,通常都是打包项目成Jar包,并部署到服务器上,本文以Linux服务器部署为主 开机自启动 运行 Jar包部署到Linux服务器上面,不能使用常用的运行 ...
- linux开机自启动的几种方法
Linux开机自启动的几种方式: 操作系统:linux mint 17.3 第一种方式:在/etc/rc.local文件中加入启动命令 这种方式适合linux用户手动配置自启动程序. 第二种方式:在/ ...
- linux 设置开机自启动服务命令,linux开机自启动服务优化设置命令
1.设置成英文字符,避免出现乱码 [root@xuegod62 ~]# LANG=en 2.两种配置linux开机自启动服务命令: 1) [root@xuegod62 ~]# ntsysv 2) [r ...
- Linux开机自启动程序死循环,无法进入系统
使用Linux系统开机自启动程序,任何键都无法结束程序,重启也不行. 1 杀死跑飞的程序 当你把你的Linux弄死机了,是完全的死机了,你按了Ctrl + Alt + Backspace,也没用的时候 ...
最新文章
- 为什么指针被誉为 C 语言灵魂?
- 《jacascript高级程序设计》笔记:数组方法高级
- 用shell编写的贪吃蛇游戏
- 2008搭建php运行环镜,Win2008 PHP 配置环境怎么搭建?win2008 php运行环境搭建图文教程。...
- iOS开发(10)UISegmentedControl
- Oracle 常用dump命令
- ubuntu开启root登陆
- 【英语学习】【Level 08】U05 Better option L1 Message sent
- mysql数据库分析结果与结论_mysql数据库show processlist结果分析
- Bailian3246 展览会【计数+求和】
- php多表查询 例子,thinkphp学习笔记之多表查询
- 好用的屏幕录像截图工具:Movavi Screen Capture Pro 10 Mac
- (模拟)西天取经放弃了(python类实践)
- php 木马,PHP后门木马详解
- VIVO应用市场APP上架总结
- LinkedIn领英人脉显示1度、2度、3度、领英会员的意思和区别是什么?
- 剑指chatGPT,马斯克:你们暂停一下,我追赶追赶
- 《鹰猎长空》剖析对当下儿童电影的困境与反思
- 跨站脚本(XSS)漏洞
- 动漫设计与制作计算机专业,计算机动漫设计与制作专业(毕业论文).doc
热门文章
- 鼠标点不到下面的问题
- python用pystan贝叶斯IRT模型拟合Rasch模型分析学生考试问题数据
- 我的世界神级种子Java_《我的世界》老玩家珍藏的10个“神级”种子,你一定没去过系列!...
- EduCoder实践课程——Python零基础到精通 参考答案(六)
- Uber的艰难时刻:CTO下月离职,公司或将再裁员20%至5400人
- Array 数组的常用方法(含es6)
- 操作系统用户态和内核态
- cocos2d-x节点(CCActionGrid3D.h)API
- Python 爬虫的工具列表( 附Github代码下载链接)
- Linux 系统的常用命令之 rm ,rm -rf , rm -f 以及rm 命令的其他参数命令