在一个实际项目中,很多时候需要保证程序或软件总是运行的,只有这样才能将相关损失降至最低;可是实际中由于软件自身质量和外部因素,很难保证程序持续运行的,此时就需要写一个程序或者脚本,用来监控目标程序,只要发现目标程序挂掉了该脚本就在此让其运行起来,从而保证软件的可靠性!
以下是本人写的一个shell脚本程序,其基本思想是用ps命令将所有进程信息写到文档中,然后用grep从文档中查找目标程序,若找到则不管,没找到则执行目标程序使其重启即可!
shell脚本如下:
#!/bin/sh
#检测程序(/kjd/gateway)是否运行,未运行则启动该程序
i=1
while [ i=1 ]
do
cd /kjd/doc
echo "I'm KJD!"
ps >/kjd/doc/process
var1= grep gateway /kjd/doc/process
#echo $var1
#declare -i a=$?
if [ $? -eq 0 ];
then
echo "gateway is running!"
else
echo "gateway is dead!"
/kjd/gateway
fi
rm /kjd/doc/process
sleep 5
done
注意:此脚本需要添加到Linux系统的启动项中。
本文永久更新地址://m.ajphoenix.com/linux/26634.html