自己在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这个脚本,当然如果你不嫌浪费资源的话,还可以自己搞个邮件报警.