在Linux中将Tomcat作为Service运行(转)
文章目录
一、创建启动/停止脚本文件
通过一下脚本,可以使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 $"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
<span style="font-weight: bold">
二、保存并设置脚本文件
将以上的脚本文件保存在/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行对服务进行描述,可以用 “\” 跨行注释。
在tomcat文件的头两行的注释语句中,需要包含chkconfig和description两部分内容(确认不要拼写错误,),否则在执行“chkconfig –add tomcat”时,会出现“tomcat服务不支持chkconfig”的错误提示。
chkconfig这行表示缺省启动的运行级别以及启动和停止的优先级,如该服务缺省不再任何运行级启动,则以 - 代替运行级别。在tomcat中表示脚本在运行级2、3、4、5启动,启动优先权为10,停止优先权为90。
description行对服务进行描述,可以用 “\” 跨行注释。
参考:
[1] RE: Starting Tomcat on Linux as a Service??
[2] Starting Tomcat as a Service on Linux