由于各种各样的原因,服务器有重启的可能,这样tomcat就需要配置成开机自动启动,否则每次重启后就需要连远程手动启动tomcat,如果服务器被迫重启,而技术人员又不能及时运行tomcat,那么后果很严重。

        先来回忆一下我们熟悉的windows环境如何配置服务开机自动启动:两种方法,第一,将可执行文件放在附件的启动文件夹中;第二,将bat文件用sc命令添加到系统服务并设置成开机自动启动。

        linux环境跟windows环境一样,也是这两种方法。

第一种方法,将tomcat的启动批处理文件配置在linux开机启动文件中

-----------------------------亲测有效!---------------------------------------------

        第一步,进入rc.d目录,这个目录下有一个rc.local的文件,就相当于windows的启动文件夹

第二步,用vim rc.local打开该文件  

        第三步,添加上图两行内容,第一行是你的jdk安装目录,第二行是启动tomcat命令,:wq保存退出,这样每次重启就可以自动启动tomcat了,测试成功。

第二种方法,将tomcat服务添加到系统服务中,并设置成开机自动启动

        第一步,在/etc/init.d目录中创建tomcat文件,也可以取别的名字,笔者命名为tomcat,以后的服务名就是tomcat

        第二步,在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/local/java/jdk1.8.0_171  
export CATALINA_HOME=/usr/local/tomcat-9/apache-tomcat-9.0.8  
export CATALINA_BASE=/usr/local/tomcat-9/apache-tomcat-9.0.8  
  
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 tomcat | grep apache-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

 

红框内改成自己的jdk路径和tomcat路径

第三步,修改文件的执行权限,使用命令chmod 777 tomcat

第四步,其实到第三步,服务已经配置成功,只要使用service tomcat start/stop/restart就可以启动、关闭、重启tomcat了。

现在将其添加到系统服务,使用命令:chkconfig --add tomcat

然后使用chkconfig --list查看服务是否添加成功

至此,linux环境下配置tomcat开机自动启动就成功了。重启后会发现tomcat已自动启动。

但是,如果你又不想让它自动启动了,可以使用chkconfig tomcat on/off切换开机启动关闭

而且,为增加系统稳定性,建议使用第二种方法添加开机启动。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐