本文将详细讲解在 CentOS 7.4 系统上如何安装tomcat 9,tomcat是没有32位和64位之分的。

创建tomcat的安装路径

首先在/usr/local/下建立一个tomcat的文件夹

[root@VM_0_9_centos ~]# cd /usr/local
[root@VM_0_9_centos local]# mkdir tomcat9
[root@VM_0_9_centos local]# cd tomcat9/
[root@VM_0_9_centos tomcat9]# ls
apache-tomcat-9.0.7.tar.gz
[root@VM_0_9_centos tomcat9]#

然后解压缩

[root@VM_0_9_centos tomcat9]# tar -zxvf apache-tomcat-9.0.7.tar.gz

如何查看端口号

在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。

netstat命令各个参数说明如下:
  -t : 指明显示TCP端口
  -u : 指明显示UDP端口
  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
  -n : 不进行DNS轮询,显示IP(可以加速操作)
即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况。
  netstat -ntlp //查看当前所有tcp端口∙
  netstat -ntulp | grep 80 //查看所有80端口使用情况∙
  netstat -an | grep 3306 //查看所有3306端口使用情况∙

修改tomcat的端口号

一般我会把原来的tomcat的8080端口改掉,进入tomcat的conf目录下,编辑server.xml文件.

端口我改成了8888,并添加了一个URIEncoding="UTF-8",修改了server.xml必须重启tomcat.

进入到conf修改server.xml来修改tomcat的端口号.

[root@VM_0_9_centos conf]# vim server.xml

设置Linux的防火墙

之前我已讲过,因为Linux的防火墙默认只对外开放了一个22的端口,其他的端口都没打开。所以你需要把它的防火墙设

置一下,让它对tomcat的8888端口号放行。

使用 cd ~ 命令切换到当前用户主目录(即root),然后使用如下命令来设置Linux的防火墙,使其对tomcat的8080端口号放

行。

**Centos7.4开启端口方法 **

例如:开放80端口方法如下:

  • 添加
# firewall-cmd --zone=public --add-port=80/tcp --permanent  (--permanent永久生效,没有此参数重启后失效)
  • 重新载入
# firewall-cmd --reload
  • 查看
# firewall-cmd --zone=public --query-port=80/tcp
  • 删除
# firewall-cmd --zone=public --remove-port=80/tcp --permanent
[root@VM_0_9_centos conf]# cd /
[root@VM_0_9_centos /]# firewall-cmd --zone=public --add-port=8888/tcp --permanent
success
[root@VM_0_9_centos /]# firewall-cmd --reload
success
[root@VM_0_9_centos /]# firewall-cmd --zone=public --list-ports
8088/tcp 8080/tcp 80/tcp 8888/tcp
[root@VM_0_9_centos /]# firewall-cmd --zone=public --query-port=80/tcp
yes

启动tomcat

[root@VM_0_9_centos /]# cd /usr/local/tomcat9/apache-tomcat-9.0.7/bin/
[root@VM_0_9_centos bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat9/apache-tomcat-9.0.7
Using CATALINA_HOME: /usr/local/tomcat9/apache-tomcat-9.0.7
Using CATALINA_TMPDIR: /usr/local/tomcat9/apache-tomcat-9.0.7/temp
Using JRE_HOME: /usr/java/jdk-10.0.2/
Using CLASSPATH: /usr/local/tomcat9/apache-tomcat-9.0.7/bin/bootstrap.jar:/usr/local/tomcat9/
apache-tomcat-9.0.7/bin/tomcat-juli.jar
Tomcat started.

测试tomcat

CentOS 7 使用、打开、关闭、防火墙与端口

systemctl是CentOS7的服务管理工具中主要的工具,它融合之前servicechkconfig的功能于一体。

  • 启动一个服务:systemctl start firewalld.service
  • 关闭一个服务:systemctl stop firewalld.service
  • 重启一个服务:systemctl restart firewalld.service
  • 显示一个服务的状态:systemctl status firewalld.service
  • 在开机时启用一个服务:systemctl enable firewalld.service
  • 在开机时禁用一个服务:systemctl disable firewalld.service
  • 查看服务是否开机启动:systemctl is-enabled firewalld.service
  • 查看已启动的服务列表:systemctl list-unit-files|grep enabled
  • 查看启动失败的服务列表:systemctl --failed

配置firewalld-cmd

  • 查看版本: firewall-cmd --version
  • 查看帮助: firewall-cmd --help
  • 显示状态: firewall-cmd --state
  • 查看所有打开的端口: firewall-cmd --zone=public --list-ports
  • 更新防火墙规则: firewall-cmd --reload
  • 查看区域信息: firewall-cmd --get-active-zones
  • 查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
  • 拒绝所有包:firewall-cmd --panic-on
  • 取消拒绝状态: firewall-cmd --panic-off
  • 查看是否拒绝: firewall-cmd --query-panic

那怎么开启一个端口呢

  • 添加

    firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
  • 重新载入

    firewall-cmd --reload
  • 查看

    firewall-cmd --zone=public --query-port=80/tcp
  • 删除

    firewall-cmd --zone=public --remove-port=80/tcp --permanent

在 CentOS 7 中设置 Tomcat 开机自启动

假设Tomcat的安装路径为/usr/local/tomcat9/apache-tomcat-9.0.7

1、为 tomcat 添加启动参数

catalina.sh在执行的时候会调用同级路径下的setenv.sh来设置额外的环境变量,因此在/usr/local/tomcat9/apache-tomcat-9.0.7/bin路径下创建setenv.sh文件,内容如下:

# 在tomcat目录下面的bin目录下面创建setenv.sh文件,
# 因为catalina.sh在执行的时候会调用同级路径下的setenv.sh来设置额外的环境变量。
export CATALINA_HOME=/usr/local/tomcat9/apache-tomcat-9.0.7
export CATALINA_BASE=/usr/local/tomcat9/apache-tomcat-9.0.7
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/temp/tomcat.pid"
#add java opts
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

2、编写 tomcat.service 文件

/usr/lib/systemd/system路径下添加tomcat.service文件,内容如下:

# 在/usr/lib/systemd/system路径下添加tomcat.service文件,内容如下:
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target [Service]
Type=forking
Environment="JAVA_HOME=/usr/java/jdk-10.0.2/"
PIDFile=/usr/local/tomcat9/apache-tomcat-9.0.7/temp/tomcat.pid
ExecStart=/usr/local/tomcat9/apache-tomcat-9.0.7/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true [Install]
WantedBy=multi-user.target

3、将 tomcat 加入服务管理

  • 设置权限
chmod 754 tomcat.service
  • 启动关闭服务,设置开机启动
# 开机启动
systemctl enable tomcat.service
# 禁止开机启动
systemctl disable tomcat.service
# 启动服务
systemctl start tomcat.service
# 关闭服务
systemctl stop tomcat.service
# 重新启动
systemctl restart tomcat.service

参考资料:

CentOS 7.4 上如何安装 tomcat 9的更多相关文章

  1. CentOS 6.4 系统上如何安装 tomcat 8

    CentOS 6.4 系统上如何安装 tomcat 8 本文将详细讲解在Linux系统上如何安装tomcat,tomcat是没有32位和64位之分的. 1.下载tomcat 首先我们肯定要先下载tom ...

  2. Mac 上 brew 安装Tomcat

    首先保证brew命令能够正常使用: 搜索tomcat是否存在:brew search tomcat 安装tomcat:brew install tomcat 检查是否安装成功:catalina -h ...

  3. 使用 SSH上传安装tomcat

    开发步骤: 1.在soft文件夹下上传tomcat 2.[root@localhost soft]# tar  -zxvf apache-tomcat-7.0.61.tar.gz    //解压安装 ...

  4. 图解 SSH上传安装tomcat

    安装步骤: 1.SSH上传压缩包 2.[root@localhost soft]# tar  -zxvf apache-tomcat-7.0.61.tar.gz    //解压安装 解压结果 3.[r ...

  5. (转)CentOS 7.6 上编译安装httpd 2.4.38

    原文:https://www.s4lm0x.com/archives/40.html https://www.cnblogs.com/sunshine-H/p/8110608.html----超详细 ...

  6. CentOS 6.5上MySQL安装部署与入门。

    centos 6.5 yum 安装mysql1. 安装软件:yum install -y mysql-server mysql mysql-devel2.启动服务:service mysqld sta ...

  7. CentOS 6.9上inotify-tools 安装及使用方法

    文章目录 [隐藏] 一.检查系统内核版本 三.下载安装(下载有点慢) 四.查看inotify默认参数 五.修改inotify参数 六.创建实时监控脚本 (file 里面放的需要监听的目录) 七:实例操 ...

  8. 【good】在CentOS 6.x上安装GlusterFS

    转发:http://quenywell.com/install-glusterfs-on-centos-6-x/ 本文主要介绍如何在CentOS 6.x上快速安装GlusterFS.GlusterFS ...

  9. [moka同学摘录]在Centos 6.5下成功安装和配置了vim7.4

    来源:https://my.oschina.net/gzyh/blog/266097 资源下载地址: 链接:http://pan.baidu.com/s/1kVuaV5P 密码:xkq9   摘要: ...

随机推荐

  1. 动态切换input的 disables 属性

    $("input[type='text']").each(function(){ if($(this).data('parent_id')){ var _each_this_par ...

  2. vue-transition-move

    <!Doctype> <html> <head> <meta charset="utf-8"> <meta name=&quo ...

  3. github访问速度慢,样式加载不完全解决

    现象如下图: 解决方案: 绑定host 185.31.17.184 github.global.ssl.fastly.net

  4. jquery-validate校验

    开源地址:https://github.com/jquery-validation/jquery-validation 校验select添加如下属性: ignore: ":hidden:no ...

  5. .NET RabbitMQ

    在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这 种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的但是执行起来比较较耗时的地方,比如发送短 ...

  6. 【BZOJ4104】解密运算 [暴力]

    解密运算 Time Limit: 10 Sec  Memory Limit: 512 MB[Submit][Status][Discuss] Description 对于一个长度为N的字符串,我们在字 ...

  7. bzoj 2956: 模积和 ——数论

    Description 求∑∑((n mod i)*(m mod j))其中1<=i<=n,1<=j<=m,i≠j. Input 第一行两个数n,m. Output 一个整数表 ...

  8. 【HDU】6148 Valley Numer 数位DP

    [算法]数位DP [题意]定义V-number为从左到看单位数字未出现先递增后递减现象的数字,求0~N中满足条件的数字个数.T<=200,lenth(n)<=100 [题解]百度之星201 ...

  9. HDU 1087 Super Jumping! Jumping! Jumping! --- DP入门之最大上升子序列

    题目链接 DP基础题 求的是上升子序列的最大和 而不是最长上升子序列LIS DP[i]表示以a[i]结尾所能得到的最大值 但是a[n-1]不一定是整个序列能得到的最大值 #include <bi ...

  10. Unity下的ECS框架 Entitas简介

    最近随着守望先锋制作组在gdc上发布的一个关于ecs的talk,ecs这个架构算是得到了一定的曝光度. 在这之前,github上就一直有一个C#的ecs框架名为Entitas,截止现在已经有1300+ ...