服务器经常断电或被人为操作重启了,tomcat程序没运行起来怎么办?实测有效方法如下:
本文配置环境如下:
Ubuntu:Ubuntu 16.04 LTS \n \l
CATALINA_HOME:/mnt/apache-tomcat-7.0.75
JAVA_HOME:/usr/jvm/jdk1.8.0_161
一、复制tomcat的bin目录下的catalina.sh到/etc/init.d目录下:
cp /mnt/apache-tomcat-7.0.75/bin/catalina.sh /etc/init.d/
二、重命名catalina.sh为tomcat7:
mv /etc/init.d/catalina.sh /etc/init.d/tomcat7
三、修改tomcat7配置环境,注意CATALINA_HOME和JAVA_HOME对应路径:
#!/bin/sh
CATALINA_HOME=/mnt/apache-tomcat-7.0.75
JAVA_HOME=/usr/jvm/jdk1.8.0_161
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
四、设置自启动:
update-rc.d -f tomcat7 defaults
注意:此时遇到一个错误告警(未遇到可忽略)如下:
root@ubuntu-test:/mnt/apache-tomcat-7.0.75/bin# update-rc.d -f tomcat7 defaults
insserv: warning: script 'tomcat7' missing LSB tags and overrides
此时需要再次修改tomact7加入如下配置:
#!/bin/sh
### BEGIN INIT INFO
# Provides: tomcat7
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: The tomcat7 Java Application Server
### END INIT INFO
CATALINA_HOME=/mnt/apache-tomcat-7.0.75
JAVA_HOME=/usr/jvm/jdk1.8.0_161
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
再次执行就好了:
root@ubuntu-test:/# update-rc.d -f tomcat7 defaults
root@ubuntu-test:/#
五、同一个服务器配置多个tomcat自启动需注意以下:
在重复上面前面四个步骤时后,设置自启动update-rc.d -f tomcat8 defaults时,或许会报错如下:
root@ubuntu-test:/# update-rc.d -f tomcat8 defaults
insserv: script tomcat7-new: service tomcat already provided!
则需要修改tomcat8配置文件:

六、重启服务器测试是否生效,直接执行reboot命令:
root@ubuntu-test:/# reboot
Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-169-generic x86_64)
* Documentation: https://help.ubuntu.com/
174 packages can be updated.
4 updates are security updates.
New release '18.04.3 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
执行ps -ef|grep tomcat查看是否启动
root@ubuntu-test:~# ps -ef|grep tomcat
root 1183 1 99 11:03 ? 00:02:39 /usr/jvm/jdk1.8.0_161/bin/java -Djava.util.logging.config.file=/mnt/apache-tomcat-7.0.75-new/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.endorsed.dirs=/mnt/apache-tomcat-7.0.75-new/endorsed -classpath /mnt/apache-tomcat-7.0.75-new/bin/bootstrap.jar:/mnt/apache-tomcat-7.0.75-new/bin/tomcat-juli.jar -Dcatalina.base=/mnt/apache-tomcat-7.0.75-new -Dcatalina.home=/mnt/apache-tomcat-7.0.75-new -Djava.io.tmpdir=/mnt/apache-tomcat-7.0.75-new/temp org.apache.catalina.startup.Bootstrap start
浏览器检查是否启动。
本文详细介绍了在Ubuntu16.04LTS环境下,如何配置Tomcat7使其在服务器重启后能够自动启动的方法。通过复制catalina.sh脚本、修改环境变量、设置自启动服务等步骤,确保Tomcat服务的稳定运行。
1万+

被折叠的 条评论
为什么被折叠?



