Table of contents
1. Obtain the installation files
3. Installation as system service
1. Obtain the installation files
The Tomcat installed in this article is version 8.5.82, which can be easily obtained from the official website. Click the link to go directly to: Apache Tomcat® - Apache Tomcat 8 Software Downloads
Just download the compressed package of tar.gz directly, or click the link to download directly: apache-tomcat-8.5.82.tar.gz https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.82/bin /apache-tomcat-8.5.82.tar.gz
Upload the downloaded installation package to the server, for example, to the /mnt/software/tools folder
Use tar command to decompress:
[root@gts03 tools]# ll
total 815884
-rw-r--r-- 1 root root 10610025 Aug 14 22:34 apache-tomcat-8.5.82.tar.gz
-rw-r--r-- 1 root root 148162542 Aug 14 22:27 jdk-8u341-linux-x64.tar.gz
-rw-r--r-- 1 root root 676676298 Aug 13 18:15 mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz
[root@gts03 tools]# tar -zxvf apache-tomcat-8.5.82.tar.gz
Move the decompressed folder to the /mnt/software directory and rename it to tomcat-8.5.82-gtmall
[root@gts03 tools]# mv apache-tomcat-8.5.82 ../tomcat-8.5.82-gtmall
[root@gts03 tools]# cd ..
[root@gts03 software]# ll
total 32
drwxr-xr-x 8 root root 4096 Aug 14 22:36 jdk8
drwx------ 2 root root 16384 Aug 14 17:57 lost+found
drwxr-xr-x 9 mysql mysql 4096 Aug 14 18:05 mysql
drwxr-xr-x 9 root root 4096 Aug 14 22:55 tomcat-8.5.82-gtmall
drwxr-xr-x 2 root root 4096 Aug 14 22:56 tools
2. Start tomat
Enter tomcat's bin directory and start tomcat:
[root@gts03 bin]# cd /mnt/software/tomcat-8.5.82-gtmall/bin
[root@gts03 bin]# ./startup.sh
Using CATALINA_BASE: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_HOME: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_TMPDIR: /mnt/software/tomcat-8.5.82-gtmall/temp
Using JRE_HOME: /mnt/software/jdk8
Using CLASSPATH: /mnt/software/tomcat-8.5.82-gtmall/bin/bootstrap.jar:/mnt/software/tomcat-8.5.82-gtmall/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
Enter IP:8080 in the browser. If the following interface appears, the installation is successful:
3. Installation as system service
All services in the CentOS system /etc/init.d/
correspond to a script in the directory. Creating a new service means creating a new script in the directory.
Create a new startup script here Tomcat
.
vim /etc/init.d/tomcat-gtmall
#!/bin/sh -e
###必须添加,才能使用chkconfig命令设为自启动,2345参数表示,在哪些运行级别启动,启动序号61;关闭序号61;两位数字即可
#chkconfig:2345 61 61
##JDK目录
export JAVA_HOME=/mnt/software/jdk8
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.
export CATALINA_HOME=/mnt/software/tomcat-8.5.82-gtmall
case "$1" in
start)
${CATALINA_HOME}/bin/startup.sh
exit 0
;;
stop)
${CATALINA_HOME}/bin/shutdown.sh
exit 0
;;
debug)
${CATALINA_HOME}/bin/shutdown.sh
${CATALINA_HOME}/bin/catalina.sh run
exit 0
;;
force-reload|restart)
${CATALINA_HOME}/bin/startup.sh
${CATALINA_HOME}/bin/shutdown.sh
exit 0
;;
*)
echo "Usage: /etc/init.d/tomcat-gtmall {start|stop|restart|force-reload|debug}"
exit 1
;;
esac
exit 0
ESC:wq save and exit. Modify file permissions:
chmod o+x /etc/init.d/tomcat-gtmall
Add as startup:
chkconfig --add tomcat-gtmall
chkconfig --list
First stop the original service and start it as a service:
[root@gts03 bin]# ./shutdown.sh
Using CATALINA_BASE: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_HOME: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_TMPDIR: /mnt/software/tomcat-8.5.82-gtmall/temp
Using JRE_HOME: /mnt/software/jdk8
Using CLASSPATH: /mnt/software/tomcat-8.5.82-gtmall/bin/bootstrap.jar:/mnt/software/tomcat-8r
Using CATALINA_OPTS:
[root@gts03 bin]# service tomcat-gtmall start
Using CATALINA_BASE: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_HOME: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_TMPDIR: /mnt/software/tomcat-8.5.82-gtmall/temp
Using JRE_HOME: /mnt/software/jdk8/jre
Using CLASSPATH: /mnt/software/tomcat-8.5.82-gtmall/bin/bootstrap.jar:/mnt/software/tomcat-8r
Using CATALINA_OPTS:
Tomcat started.
Visit IP:8080 again, you can access normally
When executing ./shutdown.sh, an error occurs java.net.ConnectException: Connection refused
Using CATALINA_BASE: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_HOME: /mnt/software/tomcat-8.5.82-gtmall
Using CATALINA_TMPDIR: /mnt/software/tomcat-8.5.82-gtmall/temp
Using JRE_HOME: /mnt/software/jdk8
Using CLASSPATH: /mnt/software/tomcat-8.5.82-gtmall/bin/bootstrap.jar:/mnt/software/tomcat-8.5.82-gtmall/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Aug 15, 2022 12:00:16 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Could not contact [localhost:8005] (base port [8005] and offset [0]). Tomcat may not be running.
Aug 15, 2022 12:00:16 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Error stopping Catalina
java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:394)
at java.net.Socket.connect(Socket.java:606)
at java.net.Socket.connect(Socket.java:555)
at java.net.Socket.<init>(Socket.java:451)
at java.net.Socket.<init>(Socket.java:228)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:511)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:391)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:481)
Find the java.security file in the lib/security (/mnt/software/jdk8/jre/lib/security) folder in the jdk installation directory, and change securerandom.source=file:/dev/random to: securerandom.source=
file :/dev/urandom
Check whether tomcat is closed by ps -ef|grep java. If there is any execution, kill the process.
[root@gts03 bin]# ps -ef|grep java
root 2399 1 0 Aug14 pts/2 00:00:02 /mnt/software/jdk8/jre/bin/java -Djava.util.loggint
root 2454 1 0 Aug14 pts/2 00:00:01 /mnt/software/jdk8/jre/bin/java -Djava.util.loggint
root 2540 1 0 Aug14 pts/2 00:00:02 /mnt/software/jdk8/bin/java -Djava.util.logging.cot
root 2756 2702 0 00:08 pts/3 00:00:00 grep --color=auto java
[root@gts03 bin]# kill -9 2399
[root@gts03 bin]# kill -9 2454
[root@gts03 bin]# kill -9 2540
[root@gts03 bin]# ps -ef|grep java
root 2756 2702 0 00:09 pts/3 00:00:00 grep --color=auto java