zoukankan      html  css  js  c++  java
  • tomcat7 linux service

    1. 创建tomcat用户

    useradd -r -m -d /usr/local/tomcat7 -s /sbin/nologin tomcat

    2. 将下面脚本命名为tomcat7 放入/etc/init.d/文件夹下即可

    #!/bin/bash
    #
    # tomcat7     This shell script takes care of starting and stopping Tomcat
    #
    # chkconfig: - 80 20
    #
    ### BEGIN INIT INFO
    # Provides: tomcat7
    # Required-Start: $network $syslog
    # Required-Stop: $network $syslog
    # Default-Start:
    # Default-Stop:
    # Description: Release implementation for Servlet 2.5 and JSP 2.1
    # Short-Description: start and stop tomcat
    ### END INIT INFO
     
    #useradd -r -m -d ${TOMCAT_HOME} -s /sbin/nologin tomcat
    #useradd -r -m -d /usr/local/tomcat7 -s /sbin/nologin tomcat
    
    ## Source function library.
    #. /etc/rc.d/init.d/functions
    export JAVA_OPTS="-Dfile.encoding=UTF-8 
      -Dcatalina.logbase=/var/log/tomcat7 
      -Dnet.sf.ehcache.skipUpdateCheck=true 
      -Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.EPollSelectorProvider 
      -XX:+DoEscapeAnalysis 
      -XX:+UseConcMarkSweepGC 
      -XX:+CMSClassUnloadingEnabled 
      -XX:+UseParNewGC 
      -XX:MaxPermSize=256m 
      -XX:PermSize=256m 
      -XX:MaxNewSize=512m 
      -Xms4096m -Xmx4096m"
    TOMCAT_HOME=/usr/local/tomcat7
    SHUTDOWN_WAIT=5
    export JAVA_HOME='/usr/java/jdk1.7.0_67'
    export PATH=$JAVA_HOME/bin:$PATH
     
    tomcat_pid() {
      echo `ps aux | grep org.apache.catalina.startup.Bootstrap | grep -v grep | awk '{ print $2 }'`
    }
     
    start() {
      pid=$(tomcat_pid)
      if [ -n "$pid" ] 
      then
        echo "Tomcat is already running (pid: $pid)"
      else
        # Start tomcat
        echo "Starting tomcat"
        ulimit -n 100000
        umask 007
        /bin/su -p -s /bin/sh tomcat $TOMCAT_HOME/bin/startup.sh
      fi
     
     
      return 0
    }
     
    stop() {
      pid=$(tomcat_pid)
      if [ -n "$pid" ]
      then
        echo "Stoping Tomcat"
        /bin/su -p -s /bin/sh tomcat $TOMCAT_HOME/bin/shutdown.sh
     
        let kwait=$SHUTDOWN_WAIT
        count=0;
        until [ `ps -p $pid | grep -c $pid` = '0' ] || [ $count -gt $kwait ]
        do
          echo -n -e "
    waiting for processes to exit";
          sleep 1
          let count=$count+1;
        done
     
        if [ $count -gt $kwait ]; then
          echo -n -e "
    killing processes which didn't stop after $SHUTDOWN_WAIT seconds"
          kill -9 $pid
        fi
      else
        echo "Tomcat is not running"
      fi
     
      return 0
    }
    
    log(){
         /bin/su -p -s /bin/sh tomcat -c "/usr/bin/tail -f $TOMCAT_HOME/logs/catalina.out"
    }
     
    case $1 in
    log)
      log
    ;;
    start)
      start
    ;; 
    stop)   
      stop
    ;; 
    restart)
      stop
      start
    ;;
    status)
      pid=$(tomcat_pid)
      if [ -n "$pid" ]
      then
        echo "Tomcat is running with pid: $pid"
      else
        echo "Tomcat is not running"
      fi
    ;; 
    esac    
    exit 0
  • 相关阅读:
    linux下配置java环境及问题
    Chrome工具使用
    Ibatis的resultMap和查询数据的对应关系
    spring mvc接收数组
    PowderDesign的使用
    Android Runtime Stats
    [原创]ASM动态修改JAVA函数之函数字节码初探
    [原创]WB Android客户端架构总结:发WB工作队列设计
    [原创]Android Studio的Instant Run(即时安装)原理分析和源码浅析
    [原创]Android系统中常用JAVA类源码浅析之HashMap
  • 原文地址:https://www.cnblogs.com/hzm112567/p/4401744.html
Copyright © 2011-2022 走看看