Linux下tomcat的服务器自启动配置

前言:Linux下随服务器开机自启动一般有两种方式:修改系统文件方式和作为系统服务自启动两种方式。两种都可以达到自启动目的,使用场景来说如果是学习或者研究用途,推荐前者,简单处理即可达成自启动效果。如果是稍微正式一点的环境,那么就后者,不解释!本文不比较两种方式的优略性,只单纯记录知识,请知晓!

前置内容:

  1. 确保您的linux服务器已安装和配置完JDK,本文DEMO中的JDK路径为:/usr/java/jdk1.8.0_291;
  2. 确保您的linux服务器已安装且可正常通过bin目录下的startup.sh和shutdown.sh来启动和停止TOMCAT;
  3. linux发行版本众多,且每个发行版又有不同版本,本文linux镜像版本为:CentOS 7.9 64位;

方式1:修改系统文件方式。由于该种方式定义为简单模式,那假定需求就只是开机启动tomcat,没有其它,如果还有其他诉求,建议方式2;那么操作可以概括为:编辑/etc/rc.d/rc.local -> 将tomcat启动配置写入到rc.local中 -> 修改文件权限为可执行 三步,命令如下:

1. 编辑 /etc/rc.d/rc.local

# 编辑
vi /etc/rc.d/rc.local

2. 将下列启动配置内容插入到/etc/rc.d/rc.local中并保存,相信做开发和运维的小伙伴一定对下面的路径不陌生;注意:里面的两行配置一个都不能少

export JAVA_HOME=/usr/java/jdk1.8.0_291
/usr/java/apache-tomcat-9.0.46/bin/startup.sh start

3. 修改/etc/rc.d/rc.local为可执行文件;

chmod +x /etc/rc.d/rc.local

4. 重启测试即可

sudo reboot

方式2:将脚本作为linux服务自启动方式。基本原理是在Linux中设置开机自启动的服务,先挂载到/etc/rcX.d然后在/etc/init.d下些启动脚本。

1. 在/etc/init.d下编写名为tomcat的shell脚本,编写完保存退出后赋予可执行权限。该脚本提供tomcat的启动、重启、停止三个功能。网上脚本大同小异,DEMO如下,具体可根据使用情况进行修改,命令和脚本内容如下::

# 编写tomcat脚本
vi /etc/init.d/tomcat
#!/bin/sh
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcatd
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
export JAVA_HOME=/usr/java/jdk1.8.0_291
export JRE_HOME=/usr/java/jdk1.8.0_291/jre
export CATALINA_HOME=/usr/java/apache-tomcat-9.0.46
export CATALINA_BASE=/usr/java/apache-tomcat-9.0.46
start()
{
        if [ -f $CATALINA_HOME/bin/startup.sh ];
          then
            echo $"Starting Tomcat"
                $CATALINA_HOME/bin/startup.sh
            RETVAL=$?
            echo " OK"
            return $RETVAL
        fi
}
stop()
{
        if [ -f $CATALINA_HOME/bin/shutdown.sh ];
          then
            echo $"Stopping Tomcat"
                $CATALINA_HOME/bin/shutdown.sh
            RETVAL=$?
            sleep 1
            ps -fwwu root | grep tomcat|grep -v grep | grep -v PID | awk '{print $2}'|xargs kill -9
            echo " OK"
            # [ $RETVAL -eq 0 ] && rm -f /var/lock/...
            return $RETVAL
        fi
}
 
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
# 授予可执行权限
chmod +x /etc/init.d/tomcat

2. 挂载。根本原因是由于tomcat启动时如果需要依赖其它的库,那么就要求tomcat启动要晚于它所依赖库的加载,所以需要挂载下。

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

3、设置开机脚本自启动。

chkconfig --add tomcat

4. 通过以下三个命令,判断下tomcat服务是否配置成功

service tomcat start
service tomcat stop
service tomcat restart

5. 重启测试即可。

sudo reboot

以上,完了!

方便自己及后来者!
 

你可能感兴趣的:(tomcat,linux,tomcat,jdk)