Systemd Journald占用資源過多


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

轉自cdops運維博客


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM