在linux下用shell将tomcat做成服务

来源:互联网 发布:淘宝上的avada主题 编辑:程序博客网 时间:2024/05/28 18:42

收下申明下,自己不是很会写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.5export CATALINA_HOME=/var/petschool/soft/apache-tomcat-7.0.5export CATALINA_TMPDIR=/var/petschool/soft/apache-tomcat-7.0.5/tempexport JRE_HOME=/var/petschool/soft/jdk/jreexport CLASSPATH=/var/petschool/soft/apache-tomcat-7.0.5/bin/bootstrap.jarexport JAVA_HOME=/var/petschool/soft/jdktomcat_e=/var/petschool/soft/tomcatRETVAL=0prog="tomcat"# Source function library.  . /etc/rc.d/init.d/functions  # Source networking configuration.. /etc/sysconfig/networkTOMCAT_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 ];thenecho -n "$prog: allready running"exit 1fiecho -n $"Starting $prog: "echo -e "\n"        $CATALINA_HOME/bin/startup.shtouch $tomcat_e            }stop(){       echo -n $"Stopping $prog: "for ((a=1;a<=100;a++))doCHECK_STR_LENGTH=0TOMCAT_PROCESS_CHECK_STR=`ps aux | grep 'java.*tomcat' | grep -v grep`CHECK_STR_LENGTH=${#TOMCAT_PROCESS_CHECK_STR}if [ $CHECK_STR_LENGTH != 0 ]thenkill $TOMCAT_PROCESS_IDsleep 2echo -n .elsebreakfidoneecho -e "\n"rm -f $tomcat_e}  case "$1" instart)    start    ;;stop)    stop    ;;restart)    stop    start    ;;*)    echo -n $"Usage: $0 {start|stop|restart}"    ;;esacexit $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管理了。

谢谢!




0 0
原创粉丝点击