首页 > 学院 > 开发设计 > 正文

linux系统下使用service方式启动Tomcat

2019-11-06 08:40:43
字体:
来源:转载
供稿:网友

如果需要将tomcat作为linux的后台程序运行,需要使用commons-daemon工程的jsvc工具,tomcat的bin目录里已经自带了这个工具的源码

操作环境:centos 7,Tomcat7,jdk 1.7

操作步骤如下:

解压commons-daemon-native.tar.gz
tar -zxvf commons-daemon-native.tar.gz
解压后会生成commons-daemon-1.0.15-native-src目录,进入unix目录下
cd commons-daemon-1.0.15-native-src/unix
执行配置并进行编译
注意需要预先安装gcc,如果没有安装,则使用 yum install -y gcc进行安装
./configuremake
将生成的jsvc文件拷贝到Tomcat的bin目录下
在/etc/init.d中创建tomcat文件,并写入如下脚本内容
#!/bin/sh# tomcat: Start/Stop/Restart tomcat## chkconfig: 2345 85 15# description: Apache tomcat7# Small shell script to show how to start/stop Tomcat using jsvc# If you want to have Tomcat running on port 80 please modify the server.xml# file:## <!-- Define a non-SSL HTTP/1.1 Connector on port 80 --># <Connector className="org.apache.catalina.connector.http.HttpConnector"# port="80" minPRocessors="5" maxProcessors="75"# enableLookups="true" redirectPort="8443"# acceptCount="10" debug="0" connectionTimeout="60000"/>##根据实际jdk路径进行配置java_HOME=/usr/local/bin/jdk1.7.0_75#根据实际tomcat路径进行配置CATALINA_HOME=/usr/local/bin/apache-tomcat-7.0.69 CATALINA_BASE=$CATALINA_HOMEDAEMON_HOME=$CATALINA_HOME/binTOMCAT_USER=egov# for multi instances adapt those lines.#根据实际tomcat路径进行配置,设置为tomcat路径/temp形式TMP_DIR=$CATALINA_HOME/temp#根据实际tomcat路径进行配置,设置为tomcat路径/jsvc/run/jsvc.pid形式PID_FILE=/home/egov/tomcat/jsvc/run/jsvc.pid#. /etc/rc.d/init.d/functionsCATALINA_OPTS="$CATALINA_OPTS -server -Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxNewSize=512m -XX:MaxPermSize=1024m"CLASSPATH=/$JAVA_HOME/lib/tools.jar:/$CATALINA_HOME/bin/commons-daemon.jar:/$CATALINA_HOME/bin/bootstrap.jar:/$CATALINA_HOME/bin/tomcat-juli.jarcase "$1" in start) # # Start Tomcat # $DAEMON_HOME/jsvc / -user $TOMCAT_USER / -home $JAVA_HOME / -Dcatalina.home=$CATALINA_HOME / -Dcatalina.base=$CATALINA_BASE / -Dfile.encoding=utf-8 / -Djava.io.tmpdir=$TMP_DIR / -wait 10 / -pidfile $PID_FILE / -outfile $CATALINA_HOME/logs/catalina.out / -errfile '&1' / $CATALINA_OPTS / -cp $CLASSPATH / org.apache.catalina.startup.Bootstrap # # To get a verbose JVM #-verbose / # To get a debug of jsvc. #-debug / exit $? ;; stop) # # Stop Tomcat # $DAEMON_HOME/jsvc / -stop / -pidfile $PID_FILE / org.apache.catalina.startup.Bootstrap (ps -e | awk '{ if($4== "jsvc") printf "%s ",$1}' | xargs kill -9)2>/dev/null exit $? ;; restart) # # Restart Tomcat # $0 stop $0 start ;; status) # # Restart Tomcat # ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | 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 "tomcat7 ( pid " ps ax --width=1000 | grep "[o]rg.apache.catalina.startup.Bootstrap" | awk '{printf $1 " "}' echo ") is running " else echo "tomcat7 is stopped" fi ;; *) echo "Usage tomcat7 start/stop/restart/status" exit 1;;esac
根据实际情况修改JAVA_HOME,CATALINA_HOME以及TOMCAT_USER的值
修改tomcat文件的属性
chmod 755 tomcat
添加系统服务
chkconfig --add tomcat
查看是否添加tomcat系统服务
chkconfig --list
启动tomcat服务
service tomcat start
查看是否启动成功
service tomcat status
关闭tomcat服务
service tomcat stop
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表