Tomcat 在 CentOS 上的故障排查指南
一 快速判定与定位路径
二 常见故障与修复对照表
| 现象 | 快速检查 | 修复建议 |
|---|---|---|
| 启动即退出或 catalina.out 报端口冲突 | grep -A5 “<Connector” server.xml;ss -tunlp | grep 8080;lsof -i:8080 | 释放占用进程(kill),或调整 server.xml 的端口 |
| 本地可访问,外部访问超时/拒绝 | firewall-cmd --list-all;ip addr;云安全组 | 放行端口:firewall-cmd --permanent --add-port=8080/tcp && firewall-cmd --reload;检查安全组 |
| catalina.out 报 Address already in use | 同上 | 同上 |
| catalina.out 报 OutOfMemoryError | 查看日志 OOM 类型与时间点 | 调整 JAVA_OPTS(见下节),分析堆/元空间泄漏 |
| 启动失败且无明显日志 | df -h;du -sh $CATALINA_HOME/logs | 清理旧日志或扩容磁盘,再重启 |
| 页面 404/403 | ls $CATALINA_HOME/webapps;检查 ROOT/WAR;tomcat-users.xml | 部署 WAR/ROOT;按需配置 manager 用户与角色 |
| 启动缓慢(虚拟机常见) | dmesg/系统熵值低迹象 | 安装 haveged 提升熵池:yum install -y haveged && systemctl enable --now haveged |
| 部署失败或 WAR 解压异常 | 查看 localhost.log 部署报错;检查 WAR 完整性 | 重新打包/上传;排查磁盘空间与权限 |
三 关键操作命令清单
四 内存与性能问题处理
五 环境与权限检查要点