java tomcat自动启动脚本,Tomcat init 脚本并添加服务自启动

很多用源码编译安装和一些用tar包直接解压缩的java程序都没有init脚本,不能像httpd或者nginx这种服务直接使用service httpd start,也不能使用/etc/init.d/httpd start 来启动。对于这种情况,我们可以自己写一个init脚本,并将命令用chkconfig --add 命令将该服务器加入自启动。

下面我们以tomcat为例来演示这一过程:

一、创建Tomcat init 脚本,内容如下:#!/bin/bash

#tomcat:Start/Stop/Restart tomcat

#chkconfig:234 20 80

#description: Apache Tomcat init script

export JAVA_HOME=/usr/local/jdk1.8.0_66

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin

TOMCAT_BIN=/usr/local/apache-tomcat-8.0.29/bin

TOMCAT_HOME=/usr/local/apache-tomcat-8.0.29

TOMCAT_USER=root

TOMCAT_PID(){

echo `ps -ef | grep $TOMCAT_HOME | grep -v grep | tr -s " " | cut -d " " -f2`

}

start(){

pid=$(TOMCAT_PID)

if [ -n "$pid" ]

then

echo -e "\e[00;31mTomcat is already running (pid: $pid)\e[00m"

else

#start tomcat

echo -e "\e[00;32mStarting tomcat\e[00m"

/bin/su $TOMCAT_USER -c $TOMCAT_BIN/startup.sh

fi

return 0

}

stop(){

pid=$(TOMCAT_PID)

if [ -n "$pid" ]

then

echo -e "\e[00;31mStoping Tomcat\e[00m"

sh $TOMCAT_BIN/shutdown.sh

else

echo -e "\e[00;31mTomcat is not running\e[00m"

fi

return 0

}

status(){

pid=$(TOMCAT_PID)

if [ -n "$pid" ]

then echo -e "\e[00;32mTomcat is running whit pid: $pid\e[00m"

else

echo -e "\e[00;31mTomcat is stopped\e[00m"

fi

return 0

}

case "$1" in

start)

start

;;

stop)

stop

;;

restart)

stop

sleep 3

start

;;

status)

status

;;

*)

echo 'Usage: $0 {start|stop|restart|status}'

exit 1

esac

exit 0

注意事项:

脚本中需要输出JAVA_HOME 和JRE_HOME等变量。否则执行service tomcat start|stop命令会报错。

二、如何将tomcat服务加入到开机自启动?

1、服务脚本必须在/etc/init.d/目录下,脚本中包含以下两行内容:启动级别和description#chkconfig:234 20 80

#description: Tomcat is a java Servlet Container

2、chkconfig --add service_name 增加服务

http://www.linuxidc.com/Linux/2015-01/111438.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值