Chinaunix

标题: 一个自动重新启动无故退出程序的shell脚本 [打印本页]

作者: xxcom    时间: 2006-05-18 11:19
标题: 一个自动重新启动无故退出程序的shell脚本
最近linux下的一个服务总是无故退出,查了好长时间原因也没有查到,但是我又不能每天都看着监控界面,所有就写一个监控的脚本,让它来给我监控程序。

先声名你的程序必须监听某个端口,当然其他的也可以,我现在还用不到,不想写了,呵呵。

废话不说了,把代码贴出来吧,很简单的几行。
#!/bin/bash    --根据自己需要修改
cd /home/mpsp/boss/bin  --根据自己需要修改
while true
do
netstat -na|grep LISTEN|grep 10021 >/dev/null  --获取监听端口状态
S61=$?
if [ $S61 -ne 0  ]; then  --如果端口死掉重起
echo `date` 端口死掉, 重起
runr         --这个是你自己的启动脚本
fi
sleep 2
done

runr:
#!/bin/bash
echo 重新启动上海移动服务
ps -ef|grep boss |grep -v grep|awk 'BEGIN{printf "kill "}{printf "%s ", $2}'|bash  ---判断进程是否存在,存在就杀掉
./rund          ---程序启动脚本,这个就不提供了,呵呵


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/8502/showart_114398.html




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2