Linux:tomcatの起動スクリプト作成+サービス登録
Last-modified: 2014-03-19 (水) 01:18:38 (3546d)
Top / Linux:tomcatの起動スクリプト作成+サービス登録
Linux:tomcatの起動スクリプト作成+サービス登録 †
かまけてやっていなかったけど、ついに重い腰を上げてやりました。
って程の事じゃないけど。
色々なサイトを参考に、我流で書いてます。
前提は以下の通り。
- tomcat配置ディレクトリは/opt/tomcat7
起動スクリプト †
- /etc/init.d/tomcat
#!/bin/bash # Startup script for the Tomcat Servlet Container # # chkconfig: 2345 35 65 export LANG=ja_JP.UTF-8 TOMCAT_HOME=/opt/tomcat7 LOCKFILE=/var/lock/subsys/tomcat # source function library . /etc/rc.d/init.d/functions start(){ if [ ! -f ${LOCKFILE} ]; then echo "Starting tomcat" #sudo -u tomcat ${TOMCAT_HOME}/bin/startup.sh ${TOMCAT_HOME}/bin/startup.sh sleep 1 PID=`ps -ef | grep catalina.home=${TOMCAT_HOME} | grep -v grep | awk '{print $2}'` echo ${PID} > ${LOCKFILE} tail -f ${TOMCAT_HOME}/logs/catalina.out | while read LINE do PID=`ps -ef | grep -v grep | egrep -e '.*tail.*catalina.out$' | awk '{print $2}'` if [ 1 -ne `echo $LINE | egrep -e '^.*: Server startup in [0-9]* ms$' | wc -l` ]; then echo -n "." else echo echo $LINE kill ${PID} fi done else echo "tomcat is already running" fi } stop(){ if [ -f ${LOCKFILE} ]; then echo "Shutting down tomcat" #sudo -u tomcat ${TOMCAT_HOME}/bin/shutdown.sh ${TOMCAT_HOME}/bin/shutdown.sh while [ 1 -eq `ps -ef | grep ${TOMCAT_HOME} | grep -v grep | wc -l` ] do echo -n "." sleep 1 done echo echo "Shutted down tomcat" rm -f ${LOCKFILE} else echo "tomcat is not running" fi } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) #${TOMCAT_HOME}/bin/catalina.sh version if [ -f ${LOCKFILE} ] then echo "tomcat(pid:"`cat ${LOCKFILE}`") is running." else echo "tomcat is not running." fi ;; *) echo "Usage: $0 {start|stop|restart|status}" esac exit 0
サービス登録 †
上のスクリプトを/etc/init.dにコピーしたのち、以下のコマンドで登録
chkconfig --add tomcat
登録できているか確認
# chkconfig --list tomcat tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off
はい、登録できましたー
これで
service tomcat XXX
で操作できます。
参考サイト †
このサイトが非常によく参考になりました。