SUSE Linux中将Tomcat作为Service运行

SUSE Linux没有rc.local

一、创建启动/停止脚本文件

通过一下脚本,可以使Tomcat以Service方式运行。

#!/bin/bash
            # chkconfig: 2345 10 90
            # description: Starts and Stops the Tomcat daemon.
            TOMCAT_HOME=/usr/local/apache-tomcat-5.5.12
            TOMCAT_START=$TOMCAT_HOME/bin/startup.sh
            TOMCAT_STOP=$TOMCAT_HOME/bin/shutdown.sh
            # necessary environment variables export
            CATALINA_HOME=$TOMCAT_HOME
            export JAVA_HOME=/usr/java/jdk1.5.0_05
            # source function library.
            . /etc/rc.d/init.d/functions
            # source networking configuration.
            . /etc/sysconfig/network
            # check that networking is up.
            [ "${NETWORKING}" = "no" ] && exit 0
            # check for tomcat script
            if [ ! -f $TOMCAT_HOME/bin/catalina.sh ]
            then echo "Tomcat not valilable..."
            exit
            fi
            start(){
            echo -n "Starting Tomcat: "
            daemon $TOMCAT_START
            echo
            touch /var/lock/subsys/tomcat
            }
            stop(){
            echo -n ___FCKpd___0quot;Shutting down Tomcat: "
            daemon $TOMCAT_STOP
            rm -f /var/lock/subsys/tomcat.pid echo
            }
            restart(){
            stop
            start
            }
            status(){
            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
            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
            }
            case "$1" in
            start)
            start ;;
            stop)
            stop ;;
            restart)
            stop
            sleep 3
            start ;;
            status)
            status ;;
            *)
            echo "Usage: tomcatd {start|stop|restart|status}"
            exit 1
            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行对服务进行描述,可以用 “\” 跨行注释。

posted @ 2009-02-19 09:01  echozhjun  阅读(229)  评论(0)    收藏  举报