如何配置journald服务的日志文件的保存时间?
美国、香港服务器
如何配置journald服务的日志文件的保存时间?
11-11 来源:
# journald 日志保存时间配置
核心参数:`MaxRetentionSec`,用来控制日志最长保留时长;**到达时间或者到达容量上限,任意一个条件触发就会自动清理旧日志**。
## 1、编辑配置文件
nano /etc/systemd/journald.conf
找到 `MaxRetentionSec`,去掉注释,按需设置:
[Journal]
Storage=persistent
# 保留7天日志
MaxRetentionSec=7day
# 可选:同时限制总大小,双重保护
SystemMaxUse=1G
支持单位:
- `sec` 秒、`min` 分钟、`hour` 小时、`day` 天、`month` 月、`year` 年
示例:`MaxRetentionSec=3day`、`MaxRetentionSec=12hour`
注意:`MaxRetentionSec` 是**日志最长存活时间**,不是一定会保留这么久;如果日志先把磁盘占满(触发 SystemMaxUse),会优先删旧日志。
## 2、重启服务生效
systemctl restart systemd-journald
## 3、验证配置是否加载成功
systemd-analyze cat-config systemd/journald.conf | grep MaxRetentionSec
## 4、立即按时间清理现有日志(测试用)
# 删除7天之前的旧日志
journalctl --vacuum-time=7d
## 5、补充容易混淆参数
- `MaxFileSec`:**单个日志文件最长存活时间**,到时间直接滚动换新文件,不是删除日志。
MaxFileSec=1day
意思:单个 journal 文件最多存 1 天,1 天后关闭这个文件,新建日志文件。
和 `MaxRetentionSec` 搭配使用:文件按天切割,日志整体最多保留 7 天。
### 推荐生产完整模板(直接复制)
[Journal]
Storage=persistent
SystemMaxUse=1G
SystemMaxFileSize=100M
MaxFileSec=1day
MaxRetentionSec=7day
## 6、查看当前日志占用
journalctl --disk-usage
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快