linux下tomcat service脚本

1、 将该文件放在 /etc/init.d目录下,以后就可以使用service tomcat start/stop/status/restart等命令了

2、 在/etc/rc.d/rc3.d目录下,执行 ln –s /etc/init.d/tomcat /etc/rc.d/rc3.d/S99tomcat
这样,开机就会自动启动Tomcat了。

3.如果不能运行,请检查
chmod 755 /etc/init.d/tomcat
chmod 755 apache-tomcat-5.5.25/
vi /etc/passwd
修改启动用户如
apache 的/sbin/nologin 为/bin/bash

 

#!/bin/bash   
#   
# Startup script for the tomcat   
#   
# chkconfig: 345 80 15  
# description: Tomcat is a Servlet+JSP Engine.   
  
# Source function library.   
. /etc/rc.d/init.d/functions   
  
RETVAL=0  
  
checkjava(){   
        if [ -z "$JAVA_HOME" ]; then   
                export JAVA_HOME=/usr/java/jdk1.5.0_15   
        fi   
}   
  
start(){   
        checkjava   
        checkrun   
        if [ $RETVAL -eq 0 ]; then   
                echo "Starting tomcat"  
                /usr/tomcat/bin/startup.sh   
                touch /var/lock/subsys/tomcat   
        else  
                echo "tomcat allready running"  
        fi   
}   
  
stop(){   
        checkjava   
        checkrun   
        if [ $RETVAL -eq 1 ]; then   
                echo "Shutting down tomcat"  
                /usr/tomcat/bin/shutdown.sh   
                #while [ $RETVAL -eq 1 ]; do  
                        sleep 5  
                        #checkrun   
                #done   
                rm -f /var/lock/subsys/tomcat   
        else  
                echo "tomcat not running"  
        fi   
}   
  
checkrun(){   
        ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}' | wc | awk '{print $2}' >/tmp/tomcat_process_count.txt   
        read line < /tmp/tomcat_process_count.txt   
        if [ $line -gt 0 ]; then   
                RETVAL=1  
                return $RETVAL   
        else  
                RETVAL=0  
                return $RETVAL   
        fi   
}   
  
status(){   
        checkrun   
        if [ $RETVAL -eq 1 ]; then   
                echo -n "Tomcat ( pid "  
                ps ax --width=1000 | grep "org.apache.catalina.startup.Bootstrap start" | awk '{printf $1 " "}'  
                echo -n ") is running..."  
                echo   
        else  
                echo "Tomcat is stopped"  
        fi   
        echo "---------------------------------------------"  
}   
  
case "$1" in   
start)   
        start   
        ;;   
stop)   
        stop   
        ;;   
restart)   
        stop   
        start   
        ;;   
status)   
        status   
        /usr/tomcat/bin/catalina.sh version   
        ;;   
*)   
        echo "Usage: $0 {start|stop|restart|status}"  
        esac   
  
exit 0  

 

其他资料

 二、保存并设置脚本文件

  将以上的脚本文件保存在/etc/init.d中,命名为tomcat;

  设置tomcat的文件属性

  #chmod a+x tomcat

  三、设置服务运行级别

  最后用chkconfig设置服务运行

  #chkconfig --add tomcat

  注意:

  在tomcat文件的头两行的注释语句中,需要包含chkconfig和description两部分内容(确认不要拼写错误,),否则在执行“chkconfig --add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示。

  chkconfig这行表示缺省启动的运行级别以及启动和停止的优先级,如该服务缺省不再任何运行级启动,则以 - 代替运行级别。在tomcat中表示脚本在运行级2、3、4、5启动,启动优先权为10,停止优先权为90。

  description行对服务进行描述,可以用 “\” 跨行注释。

你可能感兴趣的:(apache,tomcat,linux,脚本,bash)