自己在vps做的kingate服务端,估计最近占用流量太大了,老是被服务商把我vps重启,但kingate这个东西是一旦被强制结束掉,是无法开机启动的,因为要把kingate.pid这个文件删除了才能启动,好吧,对于我们这样的懒人来说,当然不能自己去登录服务器去手动删除并启动kingate,就写了个简单的shell脚本来替我完成这些。
系统:centos 5.x
脚本内容:
cat kingate.sh
代码如下:
#!/bin/bash
kingate=`ps -C kingate --no-header|wc -l`
file=`find /usr/local/kingate/var/kingate.pid |wc -l`
if [ "$kingate" = "1" ];then
echo "kingate is running...."
else
if [ "$file" = "1" ];then
rm -f /usr/local/kingate/var/kingate.pid
/etc/init.d/kingate start
sleep 1
kingate=`ps -C kingate --no-header|wc -l`
if [ "$kingate" = "1" ];then
echo "kingate is ok!"
else
/etc/init.d/kingate start
fi
fi
fi
用crontab每隔3分钟执行下kingate.sh这个脚本,当然如果你不嫌浪费资源的话,还可以自己搞个邮件报警.
您可能感兴趣的文章:shell脚本实现监控shell脚本的执行流程及变量的值Shell脚本实现Linux系统和进程资源监控Shell脚本实现监控MySQL主从同步Shell脚本实现监控iptables运行状态Shell脚本实现监控rsync数据是否传输完Shell脚本实现监控iptables规则是否被修改Shell脚本实现memcache缓存命中率监控一个监控Squid运行进程数并自动重启的简洁Shell脚本分享Shell脚本编写Nagios插件监控程序资源占用Linux服务器硬件运行状态及故障邮件提醒的监控脚本分享