1
logrotate 管理的日志
logrotate 是 Linux 系统中最常见的日志轮转工具,主要用于管理 /var/log/ 下的日志文件。
配置文件
主配置文件:/etc/logrotate.conf
具体服务的配置文件:/etc/logrotate.d/
关键参数
daily / weekly / monthly:日志轮转周期(按天、周、月)
rotate N:保留最近 N 个日志,超出部分删除
maxage N:保留 N 天的日志,超期自动删除
size X:当日志文件达到 X 大小(如 100M)时触发轮转
compress:压缩旧日志(通常生成 .gz 文件)
管理命令
清理日志:journalctl --vacuum-time=7d(保留 7 天内的日志)
按大小清理:journalctl --vacuum-size=500M(日志总量不超过 500MB)
2
systemd-journald 管理的日志
systemd-journald 主要管理二进制格式的日志,存储在 /var/log/journal/ 或 /run/log/journal/。
配置文件
/etc/systemd/journald.conf
关键参数
SystemMaxUse=:最大日志存储大小
SystemKeepFree=:保留多少磁盘空间
SystemMaxFileSize=:单个日志文件最大大小
SystemMaxFiles=:最大日志文件数量
MaxRetentionSec=:日志保留时间(如 1month)
3
syslog管理的日志
syslog 和 rsyslog 主要用于集中管理和转发日志,日志保存策略通常由 logrotate 处理。
配置文件
/etc/rsyslog.conf
/etc/rsyslog.d/*.conf
日志轮转仍依赖 logrotate 配置
4
自定义的日志
对于一些自定义的日志,可以使用 find 定期清理:
//删除/var/log/custom/目录下的超过30天的日志
find /var/log/custom/ -type f -mtime +30 -delete
原文始发于微信公众号(等级保护那些事):Linux的日志保存周期
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论