#!/bin/bash # # tomcat Startup script for the Apache Tomcat Server # # chkconfig: 345 80 11 # description: Apache Tomcat is a Java Application Server. It is used to serve \ # JSP files and JAVA servlets. # Source function library. . /etc/init.d/functions # We need JAVA env vars [ -f /etc/profile.d/jdk.sh ] && . /etc/profile.d/jdk.sh [ -f /etc/profile.d/tomcat.sh ] && . /etc/profile.d/tomcat.sh prog=tomcat user=tomcat chome=/var/lib/tomcat RETVAL=0 ENV="CATALINA_TMPDIR=$chome/temp CATALINA_PID=$chome/work/tomcat.pid CATALINA_BASE=$chome" webapps_fix_perm() { perm=`ls -la $chome | grep webapps | awk '{print $3}'` if [ "$perm" != "$user" ]; then chown -R $user:$user $chome/webapps $chome/temp fi } start() { echo -n $"Starting $prog: " webapps_fix_perm su -s /bin/sh $user -c "$ENV $chome/bin/catalina.sh start > /dev/null 2>&1" RETVAL=$? [ "$RETVAL" -eq 0 ] && touch /var/lock/subsys/$prog [ "$RETVAL" -eq 0 ] && success $"$prog startup" || failure $"$prog startup" echo return $RETVAL } stop() { echo -n $"Stopping $prog: " su -s /bin/sh $user -c "$ENV $chome/bin/catalina.sh stop -force > /dev/null 2>&1" RETVAL=$? rm -rf /var/lock/subsys/$prog $chome/work/tomcat.pid $chome/work/Catalina [ $RETVAL = 0 ] && success $"$prog shutdown" || failure $"$prog shutdown" echo } status() { cd /usr/local/tomcat/bin STATUS=`java -Dcatalina.base=/usr/local/tomcat CatalinaStatus 2>&1 | awk '{print $3}'` echo "Tomcat is $STATUS" } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status ;; restart) stop start ;; *) echo $"Usage: $prog {start|stop|restart}" exit 1 esac exit $RETVAL