shell脚本检测tomcat与启动tomcat服务

发布时间:2020-10-20编辑:脚本学堂
用shell脚本管理tomcat服务,linux shell脚本实现检测tomcat的方法,linux自动重启tomcat脚本,linux设置tomcat自启动的方法,供大家学习参考。

一、linux shell/ target=_blank class=infotextkey>shell脚本检测tomcat自动重启

后台运行命令 sh xxx.sh &
查看后台任务:jobs
召唤到前台:fg jobs编号
可以删掉while循环的代码放到crontab里面定时执行,可以将脚本直接后台运行,

shell脚本:
 

复制代码 代码示例:
#!/bin/bash
while [ true ]
do
    url="http://www.jb200.com/";
    httpOK=`curl --connect-timeout 10 -m 60 --head --silent $url | awk 'NR==1{print $2}'`;
    if [ $httpOK == "200" ];then
        tomcat6=`ps -ef | grep tomcat | awk 'NR==1{print $1" "$2;}'`;
        user=`echo $tomcat6 | awk 'NR==1{print $1}'`;
        pid=`echo $tomcat6 | awk 'NR==1{print $2}'`;
        if [ $user != "tomcat" ]; then
            service tomcat6 start;
        else
            kill -9 $pid;sleep 5s;service tomcat6 start;service tomcat6 start;service tomcat6 status;
        fi;
    fi;
    sleep 5m;
done;

二,linux自动重启tomcat脚本

linux自动重启tomcat脚本:
 

复制代码 代码示例:

#!/bin/bash
#
#chkconfig: 35 88 14
#description: tomcat auto start script
#script by okhelper
case "$1" in
start)
echo "Here is start script..."
JAVA_HOME=/usr/jdk1.6.0_13;
export JAVA_HOME
JRE_HOME=$JAVA_HOME/jre;
export JRE_HOME
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=./:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
date +"%Y-%m-%d %T:Starting tomcat..." >> /var/log/tomcat.log
/software/apache-tomcat-6.0.32/bin/startup.sh >> /var/log/tomcat.log
date +"%Y-%m-%d %T:tomcat started..." >> /var/log/tomcat.log
echo "--------------------------------------------" >> /var/log/tomcat.log

stop)
echo "Here is stop script..."
JAVA_HOME=/usr/jdk1.6.0_13;
export JAVA_HOME
JRE_HOME=$JAVA_HOME/jre;
export JRE_HOME
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=./:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
date +"%Y-%m-%d %T:stoping tomcat..." >> /var/log/tomcat.log
/software/apache-tomcat-6.0.32/bin/shutdown.sh >> /var/log/tomcat.log
date +"%Y-%m-%d %T:tomcat stoped..."  >> /var/log/tomcat.log
echo "--------------------------------------------" >> /var/log/tomcat.log

restart)
echo "Here is restart script..."
date +"%Y-%m-%d %T tomcat restart..." >> /var/log/tomcat.log
$0 stop
$0 start

*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac

三、linux设置tomcat自启动的方法

linux设置tomcat自启动的方法

linux设置tomcat自动启动在centos下,开机后会自动执行/etc/rc.local中的命令,平时启动tomcat的命令为tomcat_home/bin/startup.sh或tomcat_home/bin/catalina.sh start,当直接把他们任何一个加入到/etc/rc.local中,重启机器后发现tomcat并没有启动。

原因是开机时java的环境还没有设置好,写一个shell脚本,先设置java环境,然后在启动,脚本如下:
 

复制代码 代码示例:
export JAVA_HOME=/usr/local/jdk1.6.0_30
export PATH=$JAVA_HOME/bin/:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH
export CATALINA_HOME=/usr/local/tomcat-6.0.35/
/usr/local/tomcat-6.0.35/bin/catalina.sh start

保存成一个名为auto-startup.sh的文件存放在/usr/local/tomcat-6.0.35/bin下,然后在/etc/rc.local加入/usr/local/tomcat-6.0.35/bin/auto-startup.sh即可。

注意:需要设置auto-startup.sh有执行权限。