温馨提示×

怎样清理debian tomcat日志

小樊
38
2026-09-19 10:38:46
栏目: 智能运维

在 Debian 系统上清理 Tomcat 日志,通常需要处理 logs 目录下的日志文件,并可根据需要配置日志轮转,避免日志无限增长。


一、Tomcat 日志位置(常见)

Debian 上 Tomcat 通常安装在:

/var/lib/tomcat9/   # Tomcat 9 示例
/var/lib/tomcat10/

日志目录一般是:

/var/lib/tomcat9/logs/

或(取决于安装方式):

/opt/tomcat/logs/

常见日志文件:

  • catalina.out
  • catalina.yyyy-mm-dd.log
  • localhost.yyyy-mm-dd.log
  • localhost_access_log.yyyy-mm-dd.txt
  • manager.log
  • host-manager.log

二、手动清理日志(简单直接)

1️⃣ 停止 Tomcat(推荐)

systemctl stop tomcat9

2️⃣ 删除旧日志

rm -f /var/lib/tomcat9/logs/*.log
rm -f /var/lib/tomcat9/logs/*.txt

⚠️ 不要直接删除正在写入的 catalina.out,建议清空:

> /var/lib/tomcat9/logs/catalina.out

3️⃣ 启动 Tomcat

systemctl start tomcat9

三、使用 logrotate(推荐方式 ✅)

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 无限增长(重要)

catalina.out 很容易变大,建议:

方法 1:logrotate(如上)

✅ 最推荐

方法 2:修改 Tomcat 日志配置

编辑:

/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 + 压缩
避免宕机 不要删正在写的文件

如果你告诉我:

  • Tomcat 版本
  • 安装方式(apt / 手动)
  • 是否生产环境

我可以给你更精确的配置。

0 踩