在linux系统中部署tomcat服务后,我们需要通过多种方式确认其运行状态,排查可能出现的启动失败、服务异常等问题,以下是常用的查看方法。

通过进程命令查看tomcat运行状态
进程是判断tomcat是否运行的最直接依据,常用的进程查看命令有以下几种。
使用ps命令过滤tomcat进程
ps命令可以查看系统当前运行的进程,结合grep过滤tomcat相关进程即可确认状态。
# 查看所有包含tomcat关键字的进程 ps -ef | grep tomcat # 排除grep自身的进程,只显示tomcat相关进程 ps -ef | grep tomcat | grep -v grep
如果执行命令后有输出结果,说明tomcat进程正在运行,输出内容中会包含tomcat的安装路径、启动参数等信息;如果没有任何输出,说明tomcat进程未启动或者已经停止。
使用jps命令查看java进程
tomcat是基于java运行的服务,jps是jdk自带的java进程查看工具,可以更精准地识别java相关进程。
# 查看所有java进程 jps -l
如果输出中包含org.apache.catalina.startup.Bootstrap或者对应的tomcat安装路径,说明tomcat正在运行,该命令还会显示进程对应的pid,方便后续操作。
通过端口检测确认tomcat运行状态
tomcat默认会监听8080端口,我们也可以检查对应端口的监听情况来判断服务是否正常启动。
使用netstat命令检查端口
netstat可以查看系统的网络连接、端口监听状态。
# 检查8080端口是否被监听,默认tomcat端口为8080,若修改过请替换对应端口 netstat -tlnp | grep 8080
如果有输出且显示LISTEN状态,说明tomcat已经正常监听该端口,服务启动成功;如果没有输出,说明端口未被监听,tomcat可能未启动或者启动失败。
使用ss命令检查端口
ss是比netstat更高效的端口查看工具,在很多新版本的linux系统中默认替代了netstat。
# 检查8080端口监听状态 ss -tlnp | grep 8080
输出结果和netstat类似,通过LISTEN状态即可确认端口正常监听。
通过日志文件查看tomcat运行状态
tomcat的运行日志会记录启动过程、运行异常等详细信息,是排查启动失败问题的重要依据。
tomcat的日志默认存放在安装目录的logs文件夹下,常用的日志文件有两个:
catalina.out:主日志文件,记录tomcat启动、运行、停止的所有输出信息localhost.log:记录当前虚拟主机的相关日志
查看日志的命令如下:
# 进入tomcat安装目录,假设安装路径为/usr/local/tomcat cd /usr/local/tomcat/logs # 实时查看catalina.out日志最新内容 tail -f catalina.out # 查看日志最后100行内容 tail -n 100 catalina.out
如果日志中出现Server startup in xxx ms的提示,说明tomcat启动成功;如果出现报错信息,可以根据报错内容定位启动失败的原因,比如端口被占用、配置文件错误等。
通过tomcat管理页面查看运行状态
如果tomcat已经正常启动,并且开启了管理页面功能,也可以通过浏览器访问管理页面查看状态。
首先需要确保tomcat的conf/tomcat-users.xml文件中配置了管理用户,配置示例如下:
<role rolename="manager-gui"/> <user username="admin" password="admin123" roles="manager-gui"/>
配置完成后重启tomcat,在浏览器中访问http://服务器ip:8080/manager/html,输入配置的用户名密码登录后,就可以在页面中看到tomcat的运行状态、部署的应用列表、服务器信息等内容。
常见问题排查
如果按照上述方法检查后确认tomcat未运行,可以先查看catalina.out日志中的报错信息,常见的问题有端口被占用、java环境未配置、配置文件语法错误等。如果是端口被占用,可以通过netstat -tlnp | grep 占用端口找到占用进程,停止对应进程或者修改tomcat的conf/server.xml中的端口配置即可。