月度归档:2018年11月

Centos7释放Journal产生的日志文件

坦率的讲徐叔有好几台服务器国内几台阿里云,美国也有几台。奈何磁盘都只有可怜兮兮的40G好在都是SSD磁盘。精打细算网站上的图片都不敢放高清的,视频压根就不敢放。最近巡查发现磁盘突然暴涨了好几个G的磁盘占用经过排查主要都是由Jorunal生成的日志所导致。

从Centos7开始使用的systemd使用了journal日志,这个日志的管理方式和以往使用syslog的方式不同,可以通过管理工具维护。

使用df -h检查磁盘文件,可以看到/run目录下有日志目录/run/log/journal,占用了数G空间。

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  8.5G  4.2G  4.4G  49% /
tmpfs                     16G  1.6G   15G  11% /run

在日志目录下有很多历史累积的日志。

检查当前journal使用磁盘量

journalctl --disk-usage

清理方法可以采用按照日期清理,或者按照允许保留的容量清理

journalctl --vacuum-time=2d
journalctl --vacuum-size=500M

如果要手工删除日志文件,则在删除前需要先轮转一次journal日志

systemctl kill --kill-who=main --signal=SIGUSR2 systemd-journald.service

要启用日志限制持久化配置,可以修改 /etc/systemd/journald.conf

SystemMaxUse=16M
ForwardToSyslog=no

重启

systemctl restart systemd-journald.service

检查journal是否运行正常以及日志文件是否完整无损坏

journalctl --verify

参考

How to clear journalctl

Is it safe to delete /var/log/journal log files?