Tomcat6のサービス登録
CentOS5にTomcat6のサービスを登録してみた。
以下のサイトを参考
http://centos.oss.sc/java/tomcat6/
事前にJavaはSunのjdk6u3をrpmからインストールし、Tomcat6をダウンロードしていて、/usr/local以下に解凍している。
また、Tomcatの解凍先に対して/usr/local/tomcatというシンボリックリンクを張ってある。
環境変数JAVA_HOMEやCATALINA_HOMEは環境に合わせて設定済み。
やらなければいけないこと
- jsvcのコンパイル
autoconf
chmod 744 configure
./configure
make
cp jsvc $CATALINA_HOME/bin
#!/bin/sh # # chkconfig: 345 80 15 # description: tomcat # Source function library. . /etc/init.d/functions JAVA_HOME=/usr/java/default CATALINA_HOME=/usr/local/tomcat TOMCAT_USER=tomcat TMP_DIR=/tmp CATALINA_OPTS= CLASSPATH=\ $JAVA_HOME/lib/tools.jar:\ $CATALINA_HOME/bin/commons-daemon.jar:\ $CATALINA_HOME/bin/bootstrap.jar PIDFILE=/var/run/tomcat.pid LOCKFILE=/var/lock/subsys/tomcat JSVC=$CATALINA_HOME/bin/jsvc start(){ # # Start Tomcat # echo -n "Starting tomcat: " $JSVC \ -pidfile $PIDFILE \ -user $TOMCAT_USER \ -home $JAVA_HOME \ -Dcatalina.home=$CATALINA_HOME \ -Djava.io.tmpdir=$TMP_DIR \ -outfile $CATALINA_HOME/logs/catalina.out \ -errfile '&1' \ $CATALINA_OPTS \ -cp $CLASSPATH \ org.apache.catalina.startup.Bootstrap # # To get a verbose JVM #-verbose \ # To get a debug of jsvc. #-debug \ ret=$? if [ $ret -eq 0 ]; then echo_success touch $LOCKFILE else echo_failure fi echo } stop(){ # # Stop Tomcat # echo -n "Shutting down tomcat: " $JSVC \ -stop \ -pidfile $PIDFILE \ org.apache.catalina.startup.Bootstrap ret=$? if [ $ret -eq 0 ]; then echo_success rm -f $PIDFILE rm -f $LOCKFILE else echo_failure fi echo } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) status $JSVC ;; *) echo $"Usage $0 {start|stop|restart|status}" exit 1;; esac
-
- chkconfig tomcat on でサービスに登録する。