本篇文章讲解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 开机自启动多个脚本程序相关推荐

  1. linux 开机自启动运行python脚本

    供测试的python脚本testboot.py(确认你的python3路径二选一): #!/usr/bin/python3 with open('testboot.txt',"w" ...

  2. Linux开机自启动jar包详细操作,认真看完肯定可以完成

    Linux开机自启动jar包脚本 有xshll和xftp的可以直接在Windows系统下创建一个txt文件贴上以下代码 #!/bin/sh export JAVA_HOME=你Linux系统下的jav ...

  3. linux开机自启动程序设置方法

    linux如何开机运行自己的程序呢? 搞了几天终于搞定.... 1.首先在自己的工程文件里编写自启动shell文件,这是我的例子如下:文件名字(testudp.sh),可执行程序为tst_client ...

  4. Linux开机自启动脚本

    Linux开机自启动脚本 方式一:/etc/profile.d/ 把对应需要启动的脚本程序放在/etc/profile.d/下 chmod +x /etc/profile.d/start-demo.s ...

  5. linux 程序加启动项,linux 让一个程序开机自启动并把一个程序加为服务

    linux 让一个程序开机自启动并把一个程序加为服务 來源:互聯網  2016-05-27 08:31:00  評論 linux 让一个程序开机自启动并把一个程序加为服务 本文以tomcat7为例 首 ...

  6. linux springboot开机启动,SpringBoot 部署到Linux开机自启动和运行

    前文 SpringBoot是一个强大的微服务框架,通常都是打包项目成Jar包,并部署到服务器上,本文以Linux服务器部署为主 开机自启动 运行 Jar包部署到Linux服务器上面,不能使用常用的运行 ...

  7. linux开机自启动的几种方法

    Linux开机自启动的几种方式: 操作系统:linux mint 17.3 第一种方式:在/etc/rc.local文件中加入启动命令 这种方式适合linux用户手动配置自启动程序. 第二种方式:在/ ...

  8. linux 设置开机自启动服务命令,linux开机自启动服务优化设置命令

    1.设置成英文字符,避免出现乱码 [root@xuegod62 ~]# LANG=en 2.两种配置linux开机自启动服务命令: 1) [root@xuegod62 ~]# ntsysv 2) [r ...

  9. Linux开机自启动程序死循环,无法进入系统

    使用Linux系统开机自启动程序,任何键都无法结束程序,重启也不行. 1 杀死跑飞的程序 当你把你的Linux弄死机了,是完全的死机了,你按了Ctrl + Alt + Backspace,也没用的时候 ...

最新文章

  1. 为什么指针被誉为 C 语言灵魂?
  2. 《jacascript高级程序设计》笔记:数组方法高级
  3. 用shell编写的贪吃蛇游戏
  4. 2008搭建php运行环镜,Win2008 PHP 配置环境怎么搭建?win2008 php运行环境搭建图文教程。...
  5. iOS开发(10)UISegmentedControl
  6. Oracle 常用dump命令
  7. ubuntu开启root登陆
  8. 【英语学习】【Level 08】U05 Better option L1 Message sent
  9. mysql数据库分析结果与结论_mysql数据库show processlist结果分析
  10. Bailian3246 展览会【计数+求和】
  11. php多表查询 例子,thinkphp学习笔记之多表查询
  12. 好用的屏幕录像截图工具:Movavi Screen Capture Pro 10 Mac
  13. (模拟)西天取经放弃了(python类实践)
  14. php 木马,PHP后门木马详解
  15. VIVO应用市场APP上架总结
  16. LinkedIn领英人脉显示1度、2度、3度、领英会员的意思和区别是什么?
  17. 剑指chatGPT,马斯克:你们暂停一下,我追赶追赶
  18. 《鹰猎长空》剖析对当下儿童电影的困境与反思
  19. 跨站脚本(XSS)漏洞
  20. 动漫设计与制作计算机专业,计算机动漫设计与制作专业(毕业论文).doc

热门文章

  1. 鼠标点不到下面的问题
  2. python用pystan贝叶斯IRT模型拟合Rasch模型分析学生考试问题数据
  3. 我的世界神级种子Java_《我的世界》老玩家珍藏的10个“神级”种子,你一定没去过系列!...
  4. EduCoder实践课程——Python零基础到精通 参考答案(六)
  5. Uber的艰难时刻:CTO下月离职,公司或将再裁员20%至5400人
  6. Array 数组的常用方法(含es6)
  7. 操作系统用户态和内核态
  8. cocos2d-x节点(CCActionGrid3D.h)API
  9. Python 爬虫的工具列表( 附Github代码下载链接)
  10. Linux 系统的常用命令之 rm ,rm -rf , rm -f 以及rm 命令的其他参数命令