在 Debian 系统上清理 Tomcat 日志,通常需要处理 logs 目录下的日志文件,并可根据需要配置日志轮转,避免日志无限增长。
Debian 上 Tomcat 通常安装在:
/var/lib/tomcat9/ # Tomcat 9 示例
/var/lib/tomcat10/
日志目录一般是:
/var/lib/tomcat9/logs/
或(取决于安装方式):
/opt/tomcat/logs/
常见日志文件:
catalina.outcatalina.yyyy-mm-dd.loglocalhost.yyyy-mm-dd.loglocalhost_access_log.yyyy-mm-dd.txtmanager.loghost-manager.logsystemctl stop tomcat9
rm -f /var/lib/tomcat9/logs/*.log
rm -f /var/lib/tomcat9/logs/*.txt
⚠️ 不要直接删除正在写入的 catalina.out,建议清空:
> /var/lib/tomcat9/logs/catalina.out
systemctl start tomcat9
Debian 自带 logrotate,可自动清理和压缩日志。
创建或编辑:
/etc/logrotate.d/tomcat
内容示例(Tomcat 9):
/var/lib/tomcat9/logs/catalina.out
/var/lib/tomcat9/logs/*.log
/var/lib/tomcat9/logs/*.txt {
daily
missingok
rotate 7
compress
notifempty
copytruncate
}
说明:
daily:每天轮转rotate 7:保留 7 天compress:压缩旧日志copytruncate:不重启 Tomcat 也能截断日志 ✅logrotate -d /etc/logrotate.d/tomcat
强制执行:
logrotate -f /etc/logrotate.d/tomcat
catalina.out 很容易变大,建议:
✅ 最推荐
编辑:
/etc/tomcat9/logging.properties
减少输出级别(示例):
.level = INFO
#!/bin/bash
LOG_DIR=/var/lib/tomcat9/logs
systemctl stop tomcat9
find $LOG_DIR -name "*.log" -mtime +7 -delete
find $LOG_DIR -name "*.txt" -mtime +7 -delete
> $LOG_DIR/catalina.out
systemctl start tomcat9
| 场景 | 建议 |
|---|---|
| 临时清理 | 手动 rm + 清空 catalina.out |
| 长期维护 | 使用 logrotate |
| 生产环境 | copytruncate + 压缩 |
| 避免宕机 | 不要删正在写的文件 |
如果你告诉我:
我可以给你更精确的配置。