Centos垃圾日志清理 /var/log/journal/

大半夜的网站突然打不开了,Nginx提示502错误,重新启动服务器后,网站又恢复了,于是查看了一下各种监控记录,发现服务器磁盘空间被占满了!除了系统中的外,Nginx的日志也占用了几十G,先从系统垃圾日志文件开始清理吧!

CentOS系统中的垃圾日志文件

CentOS系统中有两个日志服务,分别是传统的 rsyslog 和 systemd-journal

systemd-journald是一个改进型日志管理服务,可以收集来自内核、系统早期启动阶段的日志、系统守护进程在启动和运行中的标准输出和错误信息,还有syslog的日志。

该日志服务仅仅把日志集中保存在单一结构的日志文件/run/log中,由于日志是经历过压缩和格式化的二进制数据,所以在查看和定位的时候很迅速。

默认情况下并不会持久化保存日志,只会保留一个月的日志。另外,一些rsyslog无法收集的日志也会被journal记录到。

rsyslog作为传统的系统日志服务,把所有收集到的日志都记录到/var/log/目录下的各个日志文件中。

journal会占用系统大约3G左右的磁盘空间,如果你的磁盘够大,且需要查看相关日志,可以不进行删除,如果是那种小硬盘的VPS一类的主机,建议删除垃圾日志文件。

清空 /var/log/journal 文件的方法

用echo命令,将空字符串内容重定向到指定文件中

echo “” > system.journal

说明:此方法只会清空一次,一段时间后还要再次手动清空很麻烦,这里可以用以下命令让journalctl 自动维护空间

journalctl 命令自动维护文件大小

1.只保留近一周的日志

journalctl –vacuum-time=1w

2.只保留500MB的日志

journalctl –vacuum-size=500M

3.直接删除 /var/log/journal/ 目录下的日志文件

rm -rf /var/log/journal/日志目录名称

注意:journal会占用系统大约3G左右的磁盘空间,如果你的磁盘够大,且需要查看相关日志,可以不进行删除,如果是那种小硬盘的VPS一类的主机,建议删除垃圾日志文件。

0 评论
内联反应
查看所有评论