• 利用shell脚本,轮询监控应用的进程,如果出现崩溃进程不在的情况下,自动启动应用程序。 1、建立一个shell脚本: touch monitorRestart.sh; 2、修改脚本权限: chmod 777 monitorRestart.sh; 3、编辑文件: vim ...
    利用shell脚本,轮询监控应用的进程,如果出现崩溃进程不在的情况下,自动启动应用程序。
    1、建立一个shell脚本:
    
        touch monitorRestart.sh;
    2、修改脚本权限:
    
        chmod 777 monitorRestart.sh;
    3、编辑文件:
    
        vim monitorRestart.sh;
    文件内容:
    ```javascript
    #!/bin/sh
    while true
    do
    	ps -ef | grep "用户程序名" | grep -v "grep"
    if [ "$?" -eq 1 ]
    then
    	./run.sh #启动应用,修改成用户启动应用脚本或命令
    	echo "process has been restarted!"
    else
    	echo "process already started!"
    fi
    	sleep 10
    done
    ```
    4、启动脚本
    
        ./monitorRestart.sh
    
    5、将监控脚本monitorRestart.sh加入到Linux开机自启动中:
    方法一:
    /etc/rc.local中添加一段程序即可;
    在/etc/rc.local的末尾添加一行以绝对路径启动脚本的行:
    
         vim /etc/rc.local
    
    ```javascript
    #!/bin/sh
    #
    # This script will be executed *after* all the other init scripts.
    # You can put your own initialization stuff in here if you don't
    # want to do the full Sys V style init stuff.
    
    touch /var/lock/subsys/local
    . /etc/rc.d/rc.tune
    /opt/bbj/bbjtest.sh
    ```
    保存并退出;
    再重启动测试下,则在其它的程序都启动完成后,将启动脚本;
    
    方法二:
    init.d目录下都为可执行程序,他们其实是服务脚本,按照一定格式编写,Linux 在启动时会自动执行,类似Windows下的服务。
    `vi /etc/rc.d/init.d/myselfstart`,追加如下内容:
    ```javascript
    #!/bin/bash
    #chkconfig:2345 80 05 --指定在哪几个级别执行,0一般指关机,6指的是重启,其他为正常启动。80为启动的优先级,05为关闭的优先机
    #description:myselfstart service
    RETVAL=0
    start(){ --启动服务的入口函数
    echo -n "myselfstart serive ..."
    cd /home/sigproc
    su sigproc -c "111111 /home/sigpro/bbj.sh"
    
    }
    
    stop(){ --关闭服务的入口函数
    echo "myselfstart service is stoped..."
    }
    
    case $1 in --使用case,可以进行交互式操作
    start)
    start
    ;;
    stop)
    stop
    ;;
    esac
    exit $RETVAL
    ```
    运行`chmod +r /etc/rc.d/init.d/myselfstart`,使之可直接执行;
    运行`chkconfig --add myselfstart`,把该服务添加到配置当中;
    运行`chkconfig --list mystart`,可以查看该服务进程的状态;
    重启后查看ps -ef |grep "bbj.sh";
    
    展开全文
  • 家在写server的时候,不管server写的是多么健壮,还是经常出现core dump等程序异常退出的,但是一般情况下需要在无人为干预情况下,能够自动重新启动,保证server程序能够服务用户...使用脚本实现自动重启 首先想到的
  • Linux 下实现进程退出自动重启 一般方案有2 1.采用脚本,网上很多,但对一些嵌入式系统因资源限制,大部分命令裁剪了,故不可行 2.采用fork,父进程等待子进程退出 一下采用fork 方法实现,对于重启多个进程, ...
  • 最近遇到程序不知名原因挂掉 ,要求编写一个如果程序挂掉自动重启的脚本。 逻辑很简单, 查看程序的进程是否存在,若不存在则启动脚本,每60s检查一次,脚本如下: #!/bin/sh while true; do processExist=`ps ...
  • #!/bin/sh ...ps -ef | grep "test(程序名)" | grep -v "grep" if ["$?" -eq 0] then ./test echo "wath process has been restarted! " else echo "watch process already started !
  • 编写一个shell脚本,轮询监控应用的进程,如果出现崩溃进程不在的情况下,自动启动应用程序 touch restart.sh(新建...linux如何让一个程序崩溃后自动重启 chmod 777 restart.sh (赋予权限,默认-rw-rw-r–没有可执行...
  • 勉强写了一个自动重启的简单脚本维持一段时间。 思路:1 问题程序挂掉后,端口被释放,检测端口占用,挂掉重启。 2 cron 定时执行检测脚本 1 准备脚本 #!/bin/sh #切换到目录 cd /XXXX/XXX/XX/X t=`date` #...
  • 1.使用crontab机制增加定时检查任务,比如说写一个监控脚本,定时执行,如果程序退出了就再次拉起来。 2.另一种就是使用/etc/inittab机制,在inittab里新增一行,使用respawn(该进程只要终止就立即重新启动)标识。...
  • 1、使用脚本实现自动重启 首先想到的最简单的使用shell脚本,大概思路: ps -ef | grep “$1″ | grep -v “grep” | wc –l 是获取 $1 ($1 代表进程的名字)的进程数,脚本根据进程数来决定下一步的操作。通过一...
  • snmp程序常会自己停止,所以仿照写了以下脚本,以记录。   #! /bin/sh proc_name="net-snmp-5.5" # 进程名 file_name="/jfdata01/snmp/shell/cron.log" # 日志文件 pid=0 proc_num() 
  • 从事嵌入式行业已经3年,说来惭愧,我目前除了电路系统设计,PCB设计... 前天在群里遇到位仁兄提到他有个程序总是莫名其妙地自动关闭,他希望有段程序能够检测那个程序并在其关闭后自动将其重启。   我想了想准备试
  • linux 设置定时重启 2018-06-20 17:50:25
    一、编辑cron第一步,登陆账号第二步,输入crontab -e第三步,输入a进入编辑状态(或者按insert)第四步,每天6点自动重启:0 6 * * * reboot第五步,ctrl+c退出编辑状态第六步,shift+:,然后输入wq重启命令 ...
  • Qt应用程序自动重启 2016-01-06 17:35:08
    老有人问如何让Qt的应用程序自动重启,稍微写一点,也顺便理理自己的思路 2011.10.26 自动重启,也就是退出当前进程,启动一个新的进程。于是,先看程序如何退出 退出 Qt程序的一般结构如下: int main(int argc, ...
  • linux下监控tomcat自动重启 2018-03-30 16:36:27
    很多时候,当linux服务器挂了后重启后,tomcat服务器却还没重新启动导致项目网站无法访问,下面来解决一下这个问题1.使用yum安装crontab服务,这是一个定时器服务,可以自己设定时间,多久监控一下tomcat服务器是不是...
  • linux 程序定时重启脚本 2012-09-05 13:02:10
    首先在当前目录下新建一个名为test2.sh的文件 文件下面下如下面内容: ...保存,退出,添加执行权限:chmod +x test2.sh 同理新建一个test.sh #!bin/bash while : do  if [ $(ps -ef
  • 有时控制台程序由于日志更改或其他原因需要定时重启,在Linux平台有很多工具可以实现,但是windows命令有限,实现起来有些麻烦。最近有个项目需要处理这种情况,搜索了很久,并写了一些代码才解决。程序为java编写,...
  • 本教程用来解决,linux下tomcat服务,因为各种原因异常关闭后,实现自动重启服务,保证服务可用 主要用到了Crontab命令:具体参照前人的教程别人的关于Crontab命令的教程 还用到一个自启动脚本 #!/bin/sh # func...
  • 很少用shell脚本,最近在写一个shell脚本,遇到一些问题,...一、我们先看看编写的shell脚本的内容,该shell的作用主要是实现监控某个程序崩溃之后就自动重启该进程。 #!/bin/bash while true do procnum=` ps -ef|g
  • 提供:ZStack云计算 系列教程本教程为如何配置Linux服务,确保崩溃或重启自动加以运行系列两篇中的第一篇。内容简介本教程将讲解如何配置系统服务,旨在遭遇崩溃或服务器重启后能够自动加以运行。本示例使用MySQL...
1 2 3 4 5 ... 20
收藏数 60,023
精华内容 24,009