Linux Tomcat自动检测、重启脚本
客户的机器有时遇见宕机的情况,虽然我在Linux服务器上配置了Tomcat自启动程序,可以在机器重启的时候自动部署web应用。但是,当数据库服务器与Web应用服务器不能同时启动的时候,Tomcat启动项目就失败了。最后,写了shell脚本,来自动判断是否有tomcat进程,如果没有的话,就重启tomcat,否则,不执行任何操作,并将tomcat启动日志写到文件里。脚本如下:
#/bin/bash ############################################# # author zhao yanan # date 2010/08/23 # update 2011/01/10 # Automatic detection and restart tomcat ############################################# #脚本可写入到自动任务中,执行周期可根据tomcat起停时间长短来定,如下,每天0点到20点之间每隔10分钟检查一次 #echo "*/3 0-24 * * * root /root/script/tomcat_check.sh >> /root/script/tomcat_check.log 2>&1" >> /etc/crontab echo ======================================== date PROCESS_NUM=`ps -ef | grep tomcat | grep -v "grep" | wc -l` if [ $PROCESS_NUM -lt 1 ]; then # 判断是否有Tomcat进程,如果没有,则执行接下来的任务,否则执行else后的任务。 # java Environment variables #设置jdk的环境变量,根据自已的实际情况设定 export JAVA_HOME=/usr/local/jdk1.6.0_25 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export CATALINA_HOME=/usr/local/tomcat echo "restart tomcat." ${CATALINA_HOME}/bin/shutdown.sh #关闭tomcat sleep 5 #等待tomcat关闭,一般是1~150s不等 kill -9 `ps aux|grep "/usr/local/tomcat"|grep -v grep|awk '{print $2}'` #等待时间结束后,偿试强制结束tomcat进程 sleep 5 ${CATALINA_HOME}/bin/catalina.sh run sleep 5 else echo "checked." #检测成功,提示已检查 fi
相关推荐
bluecarrot 2020-11-23
Attend 2020-11-17
ZHAICAN 2020-11-16
codedecode 2020-11-14
zhangbingb 2020-11-12
ykmail 2020-11-11
futurezone 2020-11-06
rikeyone 2020-11-04
橄榄 2020-11-04
WenCoo 2020-10-31
liuyuchen 2020-10-27
ROES 2020-10-24
Gexrior 2020-10-22
ZHAICAN 2020-10-20
风语者 2020-10-16
zhongguomin 2020-10-16
净无邪 2020-10-15