本文将详细讲解在 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. 关于深度学习(deep learning)的常见疑问 --- 谷歌大脑科学家 Caffe缔造者 贾扬清

    问答环节 问:在finetuning的时候,新问题的图像大小不同于pretraining的图像大小,只能缩放到同样的大小吗?" 答:对的:) 问:目前dl在时序序列分析中的进展如何?研究思路 ...

  2. Activiti工作流——流程表数据转化

    任务流程部署:  启动流程实例: 请假人完成请假申请: 部门经理完成审批: 总经理审批完成:

  3. 南阳ACM 题目8:一种排序 Java版

    一种排序 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复:还知道这个长方形的宽和长,编号.长.宽都是整数:现 ...

  4. jquery checkbox选中状态以及实现全选反选

    jquery1.6以下版本获取checkbox的选中状态: $('.ck').attr('checked'); $('.ck').attr('checked',true);//全选 $('.ck'). ...

  5. mysql binlog日志手动清除

    purge binary logs to 'mysql-bin.000050'; set global expire_logs_days=7; flush logs;

  6. Oracle 导出空表的新方法(彻底解决)

    背景 使用Exp命令在oracle 11g 以后不导出空表(rowcount=0),是最近在工作中遇到一个很坑的问题,甚至已经被坑了不止一次,所以这次痛定思痛,准备把这个问题彻底解决.之所以叫新方法, ...

  7. 【洛谷 P1129】 [ZJOI2007]矩阵游戏 (二分图匹配)

    题目链接 看到题目肯定首先会想到搜索. 然鹅数据范围\(n<=200\)这么大(其实也不算太大),肯定是不行的. 如果\((i,j)\)是\(1\),从\(i\)向\(j\)连一条边,表示第\( ...

  8. 项目记录 -- zpool set

    zfs set <property=value> <filesystem|volume|snapshot> root@UA4300D-spa:~/hanhuakai/pro_0 ...

  9. 将资源文件夹中的文件通过流的方式写入到应用的File文件夹中

    //1.在Files文件夹中创建同名的数据库文件 File files = getFilesDir(); File file = new File(files, DBName); if(file.ex ...

  10. adb操作指令大全

    adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用.通过adb我们可以在Eclipse中方面通过DDMS来调试android程序,说白了就是debug工具.a ...