温馨提示×

debian tomcat日志怎么备份

小樊
36
2026-09-28 11:16:57
栏目: 智能运维

在 Debian 上备份 Tomcat 日志,常见做法有手动备份、脚本+定时任务、logrotate几种方式。下面按实用程度给你说明。


一、Tomcat 日志在哪里

一般默认路径:

/var/log/tomcat9/
# 或
/opt/tomcat/logs/

常见日志文件:

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

二、最简单:手动备份

cp -r /var/log/tomcat9 /backup/tomcat_logs_$(date +%F)

或打包:

tar czf /backup/tomcat_logs_$(date +%F).tar.gz /var/log/tomcat9

三、推荐:脚本 + cron 定时备份(最常用)

1. 编写备份脚本

vim /usr/local/bin/backup_tomcat_logs.sh

内容示例:

#!/bin/bash
LOG_DIR=/var/log/tomcat9
BACKUP_DIR=/backup/tomcat_logs
DATE=$(date +%F)

mkdir -p $BACKUP_DIR
tar czf $BACKUP_DIR/tomcat_logs_$DATE.tar.gz $LOG_DIR

# 保留 30 天
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete

赋权:

chmod +x /usr/local/bin/backup_tomcat_logs.sh

2. 加入定时任务

crontab -e

每天凌晨 2 点备份:

0 2 * * * /usr/local/bin/backup_tomcat_logs.sh

四、专业方式:用 logrotate(推荐生产环境)

Debian 默认已安装 logrotate。

示例配置

vim /etc/logrotate.d/tomcat

内容:

/var/log/tomcat9/*.log
/var/log/tomcat9/catalina.out {
    daily
    missingok
    rotate 30
    compress
    delaycompress
    notifempty
    copytruncate
}

说明:

  • copytruncate:不重启 Tomcat 也能切日志
  • compress:自动压缩
  • rotate 30:保留 30 天

测试:

logrotate -d /etc/logrotate.d/tomcat

五、远程备份(可选)

备份到远程服务器:

rsync -avz /backup/tomcat_logs/ user@backupserver:/backup/tomcat/

六、建议方案

  • 开发/测试:手动或脚本
  • 生产环境:✅ logrotate + 定期 rsync 到备份机

如果你告诉我:

  • Tomcat 版本
  • 日志路径
  • 是否允许重启 Tomcat

我可以帮你写一份可直接用的配置。

0 踩