CentOS Tomcat 的启动服务脚本

1. tomcat 自带的 jsvc, 这个工具会启动2个线程,如果应用对资源独占,会造成应用启动不了,这个和Apache Commons 里的 daemon 项目是一样的。
2. Java Service Wrapper ,
参考nginx的脚本,自己写了一个脚本,供大家参考:

复制代码

代码如下:

#
#!/bin/bash
#
# chkconfig: - 91 35
# description: Starts and stops tomcat
CATALINA_HOME=/data/site/tomcat-8085
PID_FILE=/var/run/tomcat8085.pid
JAVA_HOME=/usr/java/default
JAVA_OPTS="-server -Xms512m -Xmx1024m"
CATALINA_BASE=$CATALINA_HOME
CATALINA_OPTS="-Djava.library.path=$CATALINA_HOME/bin"
CLASSPATH=/
$JAVA_HOME/lib/tools.jar:/
$CATALINA_HOME/bin/commons-daemon.jar:/
$CATALINA_HOME/bin/bootstrap.jar
RETVAL=0
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# Start daemons functions.
start() {
#
# Start Tomcat
#
if [ -e $PID_FILE ];then
echo "$PID_FILE already running...."
exit 1
fi
echo -n $"Starting $PID_FILE: "
nohup $JAVA_HOME/bin/java /
-Dcatalina.home=$CATALINA_HOME /
-Dcatalina.base=$CATALINA_BASE /
-Djava.io.tmpdir=$TMP_DIR /
$CATALINA_OPTS /
-cp $CLASSPATH /
$JAVA_OPTS /
org.apache.catalina.startup.Bootstrap start >$CATALINA_HOME/logs/catalina.out &
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch $PID_FILE
return $RETVAL
}
# Stop daemons functions.
stop() {
#
# Stop Tomcat
#
echo -n $"Stopping $PID_FILE: "
nohup $JAVA_HOME/bin/java /
-Dcatalina.home=$CATALINA_HOME /
-Dcatalina.base=$CATALINA_BASE /
-Djava.io.tmpdir=$TMP_DIR /
$CATALINA_OPTS /
-cp $CLASSPATH /
org.apache.catalina.startup.Bootstrap stop >$CATALINA_HOME/logs/catalina.out &
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f $PID_FILE
return $RETVAL
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo $"Usage: $prog {start|stop|restart}"
exit 1
esac
exit $RETVAL

安装步骤
1. #vi tomcatd 输入以上脚本
2. #chmod +x tomcatd 设置有执行权限
3. #cp tomcatd /etc/init.d 复制到启动目录
4. #chkconfig --add tomcatd
5. #chkconfig tomcatd on
6. #service tomcatd start 启动
7. #service tomcatd stop 停止

(0)

相关推荐

  • centos7如何添加开机启动服务/脚本

    一.添加开机自启服务 在centos7中添加开机自启服务非常方便,只需要两条命令(以Jenkins为例): systemctl enable jenkins.service #设置jenkins服务为 ...

  • CentOS设置开机启动服务及自动联网的方法

    可以修改开机启动配置只需修改: vi /etc/sysconfig/network-scripts/ifcfg-eth0 如图 文件,把ONBOOT=”no”改为yes,下一次就不用手动连接了. DE ...

  • CentOS开机启动服务的修改与查看方法讲解

    每次系统开机的时候,都会根据不同的runlevel级别启动不同的服务.本文将为您揭示linux系统的开机启动服务的修改与查看. 开机按[CTRL]+[ALT]+[F7]/[F8]可查看系统启动时正在启 ...

  • centos7如何添加开机启动服务

    centos7如何添加开机启动服务 一.添加开机自启服务 在centos7中添加开机自启服务非常方便,只需要两条命令(以Jenkins为例): ? 1 2 systemctl enable jenki ...

  • CentOS系统如何启动流程?CentOS系统启动流程的图文教程

    当我们按下开机键后,系统背后的秘密我们是否了解呢?这里,我带大家探索一下linux系统开机背后的秘密. 1.加电自检 主板在接通电源后,系统首先由POST程序来对内部各个设备进行检查,自检中如发现有错 ...

  • Mac OS启动服务优化高级篇

    Mac下的启动服务主要有三个地方可配置: 1,系统偏好设置->帐户->登陆项 2,/System/Library/StartupItems 和 /Library/StartupItems/ ...

  • net framework 3.5无法启动服务(net framework 3.5怎么启动)

    安装了.NET Framework 3.5后,无法启动服务    错误通过命令的方式启动dism.exe /online /enable-feature /featurename:NetFX3 /Al ...

  • SQL Server 启动服务

    sqlserver启动服务 操作方法 01 我的电脑-->右键-->管理 02 找到服务 03 在右侧名称栏中直接搜索 s 其中箭头指向的三个服务都是需要启动的 04 1.选中服务项,点击 ...

  • 华为模拟器ensp启动服务失败处理方法

    在学习华为网络认证的时候我们需要用到华为官方的ensp模拟器,但是我们在WIN7 /WIN8/ WIN10 打开ensp的时候经常会遇到如下问题:华为模拟器ensp启动服务失败并且提示需要更改端口,但 ...