备份 Syslog 历史日志 的方法取决于你使用的 Linux 发行版 / Syslog 实现(rsyslog、syslog-ng、journald 等) 以及 日志存储位置。下面按常见场景给你一套通用且可落地的备份方案。
/var/log/messages
/var/log/syslog
/var/log/secure
/var/log/cron
/var/log/maillog
不同系统:
/var/log/messages/var/log/secure/var/log/syslog/var/log/auth.log可查看 rsyslog 配置确认:
grep -R /var/log /etc/rsyslog.conf /etc/rsyslog.d/
cp -a /var/log/syslog /backup/syslog-$(date +%F).log
或打包:
tar czf syslog-$(date +%F).tar.gz /var/log/syslog
⚠️ 不建议直接 cp 正在写入的日志,可能不完整。
ls /etc/logrotate.d/
常见文件:
/etc/logrotate.d/syslog
/etc/logrotate.d/rsyslog
编辑或新建:
vim /etc/logrotate.d/syslog-custom
/var/log/syslog
/var/log/messages
{
daily
rotate 90
compress
delaycompress
missingok
notifempty
create 0640 root adm
postrotate
/usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
endscript
}
✅ 效果:
立即测试:
logrotate -vf /etc/logrotate.d/syslog-custom
tar czf /backup/syslog-$(date +%F).tar.gz /var/log/syslog*
rsync -avz /backup/ user@backup-server:/data/syslog-backup/
可写入 cron:
0 2 * * * rsync -avz /backup/ backup-server:/data/syslog-backup/
# /etc/rsyslog.d/remote.conf
*.* @@log-server:514
适合:
查看:
journalctl --list-boots
备份:
journalctl > /backup/journal-$(date +%F).log
或复制原始数据:
cp -a /var/log/journal /backup/journal-$(date +%F)
✅ 备份周期:
✅ 保留时间:
✅ 备份日志:
✅ 加密(可选):
gpg -c syslog-2026-01-21.tar.gz
| 场景 | 推荐方式 |
|---|---|
| 临时备份 | tar + cp |
| 自动备份 | logrotate |
| 防止篡改 | rsyslog 转发 |
| 审计合规 | 远程 + 长期归档 |
| systemd 系统 | journalctl 导出 |
如果你愿意,可以告诉我:
我可以直接给你 一份可直接用的配置文件。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。