收下申明下,自己不是很会写shell,脚本是查了了自己改的。找了很多个总是有各种各样的问题,这个是亲测没有问题,希望对读者有帮助
在 /etc/init.d/ 下面创建文件 tomcat
cd /etc/init.d
touch tomcat
vim tomcat
写入脚本代码:
#!/bin/bash
#
# tomcat: Start/Stop/Restart tomcat
# author: lzh
# http://www.lerx.com
# chkconfig: 2345 80 20
# description: Tomcat is a Java Servlet Container
#
#
# match these values to your environment:
export CATALINA_BASE=/var/petschool/soft/apache-tomcat-7.0.5
export CATALINA_HOME=/var/petschool/soft/apache-tomcat-7.0.5
export CATALINA_TMPDIR=/var/petschool/soft/apache-tomcat-7.0.5/temp
export JRE_HOME=/var/petschool/soft/jdk/jre
export CLASSPATH=/var/petschool/soft/apache-tomcat-7.0.5/bin/bootstrap.jar
export JAVA_HOME=/var/petschool/soft/jdk
tomcat_e=/var/petschool/soft/tomcat
RETVAL=0
prog="tomcat"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
TOMCAT_PROCESS_STR=`ps aux | grep 'java.*tomcat' | grep -v grep`
PROCESS_ARRAY=(${TOMCAT_PROCESS_STR// / })
TOMCAT_PROCESS_ID=${PROCESS_ARRAY[1]}
start(){
if [ -e $tomcat_e ];then
echo -n "$prog: allready running"
exit 1
fi
echo -n $"Starting $prog: "
echo -e "\n"
$CATALINA_HOME/bin/startup.sh
touch $tomcat_e
}
stop(){
echo -n $"Stopping $prog: "
for ((a=1;a<=100;a++))
do
CHECK_STR_LENGTH=0
TOMCAT_PROCESS_CHECK_STR=`ps aux | grep 'java.*tomcat' | grep -v grep`
CHECK_STR_LENGTH=${#TOMCAT_PROCESS_CHECK_STR}
if [ $CHECK_STR_LENGTH != 0 ]
then
kill $TOMCAT_PROCESS_ID
sleep 2
echo -n .
else
break
fi
done
echo -e "\n"
rm -f $tomcat_e
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo -n $"Usage: $0 {start|stop|restart}"
;;
esac
exit $RETVAL
页头的几个地址定义相信大家应该明白,就是自己的jdk,jre, tomcat的地址, tomcat_e 的地址自己定义是用来保存允许状态的文件。
保存tomcat文件。
接下来是服务文件授权
sudo chmod +x /etc/init.d/tomcat
chkconfig --add tomcat
chkconfig tomcat on
然后就可以用 service tomcat start/stop/restart 来进行tomcat管理了。
谢谢!