在Linux系统中如何正确打开Tomcat服务器的详细操作步骤?

在Linux系统中启动Tomcat服务器是Java Web应用部署的基础操作,整个过程需要确保Java环境正确、Tomcat安装完整,并掌握基本的启动命令和配置方法,以下将详细介绍具体步骤及注意事项,帮助用户顺利完成Tomcat服务器的启动。

linux如何打开tomcat服务器

环境准备:安装Java运行环境

Tomcat是基于Java的应用服务器,因此必须先安装JDK(Java Development Kit)或JRE(Java Runtime Environment),以主流的OpenJDK为例,不同Linux发行版的安装命令略有差异:

Ubuntu/Debian系统

# 更新软件包列表
sudo apt update
# 安装OpenJDK 11(Tomcat 9/10推荐JDK 8+,11更佳)
sudo apt install openjdk-11-jdk

CentOS/RHEL系统

# 安装EPEL仓库(若未安装)
sudo yum install epel-release
# 安装OpenJDK 11
sudo yum install java-11-openjdk-devel

验证Java安装

安装完成后,通过以下命令检查Java版本及环境变量是否配置正确:

java -version
# 显示类似信息表示安装成功
# openjdk version "11.0.16" 2022-07-19
# OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu122.04)
# OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu122.04, mixed mode, sharing)
# 查看JAVA_HOME环境变量(若未自动配置,需手动设置,见下文)
echo $JAVA_HOME

JAVA_HOME为空,需手动配置环境变量(编辑/etc/profile~/.bashrc文件,添加以下内容):

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # 路径需根据实际安装目录调整
export PATH=$JAVA_HOME/bin:$PATH
source /etc.profile  # 或 source ~/.bashrc 使配置生效

Tomcat下载与安装

下载Tomcat压缩包

从Apache Tomcat官方镜像站下载对应版本的Tomcat(以Tomcat 10为例,下载tar.gz压缩包):

# 进入用户目录(或自定义安装目录)
cd ~
# 下载Tomcat 10(也可通过wget命令下载)
curl -O https://archive.apache.org/dist/tomcat/tomcat-10/v10.1.8/bin/apache-tomcat-10.1.8.tar.gz

解压并移动到指定目录

# 解压压缩包
tar -zxvf apache-tomcat-10.1.8.tar.gz
# 移动到/usr/local/tomcat(推荐,避免权限问题)
sudo mv apache-tomcat-10.1.8 /usr/local/tomcat
# 赋予当前用户执行权限(避免sudo启动时权限冲突)
sudo chown -R $USER:$USER /usr/local/tomcat

Tomcat目录结构说明

Tomcat安装目录下的主要文件夹及其作用如下(可通过表格清晰展示):

目录名 作用说明
bin 存放启动(startup.sh)、关闭(shutdown.sh)等脚本,以及jar包依赖文件
conf 存放服务器配置文件,如server.xml(核心配置)、web.xml(默认应用配置)
webapps 存放Web应用程序,Tomcat启动后会自动部署此目录下的应用(如ROOT、examples)
logs 存放日志文件,如catalina.out(启动日志)、localhost日志等
temp Tomcat运行时临时文件存放目录
work JSP编译后的临时文件存放目录,用于提升性能
lib 存放Tomcat运行所需的jar包,以及Web应用共用的库文件

启动Tomcat服务器

Tomcat提供了两种启动方式:前台启动(适合调试,实时查看日志)和后台启动(适合生产环境,退出终端后服务仍运行)。

linux如何打开tomcat服务器

前台启动

进入Tomcat的bin目录,执行startup.sh脚本:

cd /usr/local/tomcat/bin
./startup.sh

启动后,终端会显示类似信息:

Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/lib/jvm/java-11-openjdk-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

此时Tomcat进程会占用终端,若关闭终端,Tomcat服务会停止,适合启动后查看日志排查问题,日志文件位于logs/catalina.out

后台启动

(1)使用nohup命令(推荐)

nohup ./startup.sh > /dev/null 2>&1 &
  • nohup:表示忽略挂断信号,即关闭终端后进程仍运行;
  • > /dev/null 2>&1:将标准输出和错误输出重定向到/dev/null(避免日志堆积),若需记录日志可替换为> logs/startup.log 2>&1
  • &:让命令在后台执行。

(2)使用startup.sh&参数

./startup.sh &

但此方式不如nohup稳定,退出终端后可能被终止,建议配合disown命令使用:

./startup.sh && disown

验证Tomcat是否启动成功

通过以下方式验证:

  • 方式1:检查进程是否运行
    ps -ef | grep tomcat
    # 若看到包含"org.apache.catalina.startup.Bootstrap"的进程,表示启动成功
  • 方式2:检查端口是否监听(Tomcat默认端口为8080)
    netstat -tuln | grep 8080
    # 或使用ss命令(CentOS 7+/Ubuntu 18.04+)
    ss -tuln | grep 8080
    # 显示"LISTEN 0 128 *:8080"表示端口已监听
  • 方式3:浏览器访问
    在浏览器中输入http://服务器IP:8080,若看到Tomcat默认欢迎页面(带有Tomcat猫的图标),则表示启动成功。

配置防火墙(若需远程访问)

若Tomcat服务器需要远程访问(如通过浏览器访问),需确保Linux防火墙允许8080端口通信,不同防火墙工具的配置命令如下:

linux如何打开tomcat服务器

firewalld(CentOS 7+/RHEL 7+)

# 添加8080端口到永久区域
sudo firewall-cmd --permanent --add-port=8080/tcp
# 重新加载防火墙规则
sudo firewall-cmd --reload
# 检查端口是否开放
sudo firewall-cmd --list-ports

ufw(Ubuntu/Debian)

# 允许8080端口
sudo ufw allow 8080/tcp
# 启用防火墙(若未启用)
sudo ufw enable
# 检查规则
sudo ufw status

iptables(旧版系统)

# 添加8080端口规则
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
# 保存规则(CentOS 6: service iptables save; Ubuntu: iptables-save > /etc/iptables/rules.v4)
sudo service iptables save

常见问题排查

启动时提示“Permission denied”

原因:Tomcat脚本或目录权限不足,或当前用户无执行权限。
解决:赋予bin目录下脚本执行权限:

chmod +x /usr/local/tomcat/bin/*.sh

启动后无法访问8080端口

原因:可能是防火墙未开放端口、Tomcat未正确启动(进程存在但端口未监听)或端口被占用。
解决

  • 检查端口占用:netstat -tuln | grep 8080,若被其他进程占用,修改Tomcat端口(编辑conf/server.xml,修改<Connector port="8080"中的端口号);
  • 检查防火墙配置(见上文“配置防火墙”部分);
  • 查看Tomcat日志:tail -f /usr/local/tomcat/logs/catalina.out,定位错误信息。

相关问答FAQs

问题1:启动Tomcat时提示“Neither the JAVA_HOME nor the JRE_HOME environment variable is defined”,如何解决?
解答:该错误表示系统未找到JAVA_HOME环境变量,需手动配置JAVA_HOME,步骤如下:

  1. 确定JDK安装路径(可通过ls /usr/lib/jvm/查看);
  2. 编辑/etc/profile文件:sudo vi /etc/profile,添加以下内容:
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # 替换为实际路径
    export PATH=$JAVA_HOME/bin:$PATH
  3. 保存文件后执行source /etc/profile使配置生效,重启Tomcat即可。

问题2:如何修改Tomcat的默认端口(从8080改为8081)?
解答:修改Tomcat配置文件中的端口配置即可,步骤如下:

  1. 编辑Tomcat核心配置文件:vi /usr/local/tomcat/conf/server.xml
  2. 找到<Connector port="8080" protocol="HTTP/1.1"这一行,将port="8080"改为port="8081"
  3. 保存文件后重启Tomcat:./shutdown.sh && ./startup.sh
  4. 验证新端口:浏览器访问http://服务器IP:8081,若能正常显示Tomcat欢迎页面,则修改成功,注意:若修改为80端口(HTTP默认端口),需确保当前用户有root权限,且防火墙允许80端口访问。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/28402.html

(0)
酷番叔酷番叔
上一篇 2025年9月22日 16:47
下一篇 2025年9月22日 17:07

相关推荐

  • Linux系统中安装配置cgroup的具体步骤和方法有哪些?

    Linux中的cgroup(control group,控制组)是内核提供的一种资源管理机制,能够限制、审计和隔离进程组所使用的物理资源(如CPU、内存、磁盘I/O、网络带宽等),通过cgroup,用户可以精细化管理系统资源,实现资源配额、优先级控制及容器化隔离等场景,以下将详细介绍Linux环境下cgroup……

    2025年8月24日
    7800
  • linux文件权限如何查看文件夹权限设置

    Linux中,使用ls -l命令可查看文件和文件夹的权限设置。

    2025年8月15日
    9400
  • Linux如何安全退出root账户防风险?

    常用退出命令exit 命令在终端输入 exit 后按回车,即可退出当前root会话并返回普通用户,root@server:~# exituser@server:~$ # 已切换回普通用户logout 命令功能与 exit 相同,输入 logout 后按回车退出:root@server:~# logoutuser……

    2025年7月19日
    11300
  • Linux如何安装bz2格式软件?

    在Linux系统中,.bz2后缀的文件通常是通过bzip2算法压缩的归档文件,常见的形式为.tar.bz2(即先tar打包后bzip2压缩),安装这类软件包时,需先解压再根据软件类型进行安装,以下是详细步骤和注意事项,确认文件类型与环境准备通过file命令确认文件是否为bzip2压缩的tar包:file fil……

    2025年8月28日
    7000
  • Linux笔记本电脑编程如何搭建高效开发环境?

    Linux笔记本电脑凭借其开源特性、强大的命令行工具和高度可定制性,成为许多程序开发者的首选系统,无论是前端、后端、系统级开发还是数据科学,Linux都能提供稳定高效的开发环境,以下是Linux笔记本电脑编程的详细指南,涵盖环境搭建、工具选择和实用技巧,开发环境搭建选择合适的发行版Linux发行版众多,需根据开……

    2025年8月23日
    8200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信