Linux tomcat开机自启方案

Linux下多个tomcat开机自动启动有两种方法,一种是修改系统文件,一种shell脚本实现

一. 修改系统文件

1.修改/etc/rc.d/rc.local

	vi /etc/rc.d/rc.local 

2.在/etc/rc.d/rc.local文件最后添加下面脚本:

	export JAVA_HOME=/usr/local/java/jdk1.8.0_191    jdk路径必加
	/soft/tomcat84/apache-tomcat-8.5.57/bin/startup.sh start  tomcat1路径
	/soft/tomcat85/apache-tomcat-8.5.57/bin/startup.sh start  tomcat2路径
	多个tomcat依次添加

3.修改rc.local文件为可执行

	chmod +x  rc.local

4.验证

 	reboot重启服务器,观察应用是否启动

二.shell脚本启动

1.在/etc/init.d下新建文件tomcat(需要在root权限下操作)

	vi /etc/init.d/tomcat
	文件内容见底部
	以下为部分内容说明:
	JAVA_HOME=/usr/local/java/jdk1.8.0_191 修改为自己jdk路径
	JRE_HOME=/usr/local/java/jdk1.8.0_191/jre  jre路径
	CATALINA_HOME=/soft/tomcat80/apache-tomcat-8.5.57  第一个tomcat地址
	CATALINA_BASE=/soft/tomcat80/apache-tomcat-8.5.57  第一个tomcat地址
	CATALINA_HOME2=/soft/tomcat81/apache-tomcat-8.5.57 第二个tomcat地址
	CATALINA_BASE2=/soft/tomcat81/apache-tomcat-8.5.57 第二个tomcat地址
	多个tomcat依次配置,另需修改start,stop方法,copy修改。
	注意:多个tomcat修改conf/server.xml中8005,8080,8019端口
		修改bin/catalina.sh中的CATALINA_HOME, CATALINA_BASE 

2,文件增加可执行权限

	chmod +x /etc/init.d/tomcat

3. 挂载

	ln -s /etc/init.d/tomcat /etc/rc2.d/S16Tomcat

4.设置脚本开机自启动

	chkconfig --add tomcat

5.验证

 	reboot重启服务器,观察应用是否启动

6.扩展

	启动,停止,重启tomcat可以直接用命令
	service tomcat start
	service tomcat stop
	service tomcat restart

	如遇tomcat的8005端口启动不起来的解决办法:
	修改$JAVA_HOME/jre/lib/security/java.security 文件中 securerandom.source 配置项
	将原本的:securerandom.source=file:/dev/random
	修改为: securerandom.source=file:/dev/urandom
	保存退出后,杀掉java进程,再重新启动

tomcat脚本文件内容
下载地址: tomcat

	#!/bin/sh
	# chkconfig: 112 63 37
	# description: Auto-starts tomcat
	# /etc/init.d/tomcat
	# Tomcat auto-start
	# Source function library.
	#. /etc/init.d/functions
	# source networking configuration.
	#. /etc/sysconfig/network
	RETVAL=0
	export JAVA_HOME=/usr/local/java/jdk1.8.0_191
	export JRE_HOME=/usr/local/java/jdk1.8.0_191/jre
	export CATALINA_HOME=/soft/tomcat80/apache-tomcat-8.5.57
	export CATALINA_BASE=/soft/tomcat80/apache-tomcat-8.5.57
	export CATALINA_HOME2=/soft/tomcat81/apache-tomcat-8.5.57
	export CATALINA_BASE2=/soft/tomcat81/apache-tomcat-8.5.57
	export CATALINA_HOME3=/soft/tomcat82/apache-tomcat-8.5.57
	export CATALINA_BASE3=/soft/tomcat82/apache-tomcat-8.5.57
	start()
	{
	        if [ -f $CATALINA_HOME/bin/startup.sh ];
	          then
	            echo $"Starting Tomcat80"
	                $CATALINA_HOME/bin/startup.sh
	            RETVAL=$?
	            echo "Tomcat80 OK"
	        fi
			
			sleep 1
			
			if [ -f $CATALINA_HOME2/bin/startup.sh ];
	          then
	            echo $"Starting Tomcat81"
	                $CATALINA_HOME2/bin/startup.sh
	            RETVAL=$?
	            echo "Tomcat81 OK"
	        fi
			
			sleep 1
			
			if [ -f $CATALINA_HOME3/bin/startup.sh ];
	          then
	            echo $"Starting Tomcat82"
	                $CATALINA_HOME3/bin/startup.sh
	            RETVAL=$?
	            echo "Tomcat82 OK"
	        fi
			
			return 1
	}
	stop()
	{
	        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
	          then
	            echo $"Stopping Tomcat80"
	                $CATALINA_HOME/bin/shutdown.sh
	            RETVAL=$?
	        fi
			
			sleep 1
			
			if [ -f $CATALINA_HOME2/bin/shutdown.sh ];
	          then
	            echo $"Stopping Tomcat81"
	                $CATALINA_HOME2/bin/shutdown.sh
	        fi
			
			sleep 1
			
			if [ -f $CATALINA_HOME3/bin/shutdown.sh ];
	          then
	            echo $"Stopping Tomcat82"
	                $CATALINA_HOME3/bin/shutdown.sh
	            RETVAL=$?
	            
	        fi
			
			sleep 1
			ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
			echo "Tomcat82 OK"
			# [ $RETVAL -eq 0 ] && rm -f /var/lock/...
				
			return 1
	}
	 
	case "$1" in
	 start) 
	        start
	        ;;
	 stop)  
	        stop
	        ;;
	                                                
	 restart)
	         echo $"Restaring Tomcat"
	         $0 stop
	         sleep 1
	         $0 start
	         ;;
	 *)
	        echo $"Usage: $0 {start|stop|restart}"
	        exit 1
	        ;;
	esac
	exit $RETVAL


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值