journald占用過多磁盤空間
方法一
檢查當前journal使用磁盤量
journalctl --disk-usage
清理方法可以采用按照日期清理,或者按照允許保留的容量清理,只保存2天的日志,最大500M
journalctl --vacuum-time=2d
journalctl --vacuum-size=500M
要啟用日志限制持久化配置,可以修改
vim /etc/systemd/journald.conf
SystemMaxUse=16M
ForwardToSyslog=no
重啟
systemctl restart systemd-journald.service
檢查journal是否運行正常以及日志文件是否完整無損壞
journalctl --verify
方法二
丟棄日志
把Storage改為none
vim /etc/systemd/journald.conf
Storage=none
重啟生效
systemctl restart systemd-journald
journald.conf參數詳解
[Journal]
#日志存儲到磁盤
Storage=persistent
#壓縮日志
Compress=yes
#為日志添加序列號
Seal=yes
#每個用戶分別記錄日志
SplitMode=uid
#日志同步到磁盤的間隔,高級別的日志,如:CRIT、ALERT、EMERG 三種總是實時同步
SyncIntervalSec=1m
#即制日志的最大流量,此處指 30s 內最多記錄 100000 條日志,超出的將被丟棄
RateLimitInterval=30s
#與 RateLimitInterval 配合使用
RateLimitBurst=100000
#限制全部日志文件加在一起最多可以占用多少空間,默認值是10%空間與4G空間兩者中的較小者
SystemMaxUse=64G
#默認值是15%空間與4G空間兩者中的較大者
SystemKeepFree=1G
#單個日志文件的大小限制,超過此限制將觸發滾動保存
SystemMaxFileSize=128M
#日志滾動的最大時間間隔,若不設置則完全以大小限制為准
MaxFileSec=1day
#日志最大保留時間,超過時限的舊日志將被刪除
MaxRetentionSec=100year
#是否轉發符合條件的日志記錄到本機的其它日志管理系統,如:rsyslog
ForwardToSyslog=yes
ForwardToKMsg=no
#是否轉發符合條件的日志到所有登陸用戶的終端
ForwardToWall=yes
MaxLevelStore=debug
MaxLevelSyslog=err
MaxLevelWall=emerg
ForwardToConsole=no
#TTYPath=/dev/console
#MaxLevelConsole=info
#MaxLevelKMsg=notice
