当前位置:网站首页>清理systemd日志
清理systemd日志
2022-07-21 11:18:00 【-素心向暖】
systemd journal之于systemd
犹如syslog
之于init
,其日志文件保存在/var/log/journal
目录下。随着时间的流逝,该目录下会积累大量日志文件,占用不少的磁盘空间。如果硬盘容量较小或可用空间紧张,可以考虑清理过期日志释放占用的空间。
本文介绍清理systemd日志的方法。
清理systemd日志
清理之前,可查看一下systemd日志所占用的磁盘空间。既可以用常用的 du
命令:
sudo du -sh /var/log/journal/
# 示例输出
# 3.9G /var/log/journal/
但更推荐使用systemd日志管理专用命令 journalctl
:
journalctl --disk-usage
# 示例输出
# Archived and active journals take up 3.9G on disk.
知道了日志占用的磁盘空间,接下来便可以清理过期日志。开始之前,建议rotate
当前日志(rotate是日志操作中的一个术语,其归档旧日志,后续日志写入新创建的日志文件中):
sudo journalctl --rotate
journalctl
提供了三种清理systemd日志的方式。第一种是清理指定时间之前的日志:
# 清理7天之前的日志
sudo journalctl --vacuum-time=7d
# 清理2小时之前的日志
sudo journactl --vacuum-time=2h
# 清理10秒之前的日志
sudo journalctl --vacuum-time=10s
# 上述命令示例输出:
# Vacuuming done, freed 3.7G of archived journals on disk.
第二种是限制日志占用的空间大小:
# 限制systemd日志占用不超过1G空间
sudo journalctl --vacuum-size=1G
# 限制systemd日志占用不超过100M
sudo journalctl --vacuum-size=100M
# 输出与第一种类似
第三种是保留日志文件个数:
# 保留最近的5个日志文件
sudo journalctl --vacuum-files=5
# 输出与第一种类似
不知道journalctl
管理日志功能之前,本人用过 find
配合 exec
(或者管道加xargs
)的土办法清理过期日志:
# 删除7天前的日志
find /var/log/journal -mtime +7 -exec rm -rf {
} \;
一劳永逸的办法
返回目录
上文介绍的清理systemd日志方法适合一次性手动管理,重复做就没意思了。一劳永逸的办法是配置systemd journal,让其自动管理日志,不占用过多磁盘空间。
方法是编辑 /etc/systemd/journald.conf
文件,对其中的参数进行设置。例如限制日志最大占用1G空间:
[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitInterval=30s
#RateLimitBurst=1000
SystemMaxUse=1G
#SystemKeepFree=
#SystemMaxFileSize=
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
保存配置文件后记得重新加载:sudo systemctl restart systemd-journald
边栏推荐
猜你喜欢
Design and application of prepaid platform on power reform policy
Multimodal model clip4clip takes you to realize mutual search between text and video
如何搭建一个好的知识库管理系统?
乘数科技云管控平台适配阿里云PolarDB,共促云原生数据库生态繁荣
[39题] 牛客深度学习专项题
IDEA 2020.1 取消参数名称显示
这个可视化分析库,让你轻松玩转数据科学!
真人踩过的坑,告诉你避免自动化测试新手常犯的10个错误
生物制药安全供电保生产
代码管理(新手)
随机推荐
运动员和教练案例代码
预付费平台关于电改政策的设计与应用
Chapter 106 governance in compound
CLion配置WSL工具链
Application of DC distribution system products at the end of data center
Unity代码通过Package Manager导入包的方法
Talking about NPM construction process and package JSON and package lock. Workflow of JSON
局部内部类
匿名内部类在开发中的使用
从0开始实现一个代理池
mysql隐藏版本号
冒号排序代码实现
ANSVC无功补偿装置助力江苏某环保能源项目
zooInspector 下载
Sequences, Time Series and Prediction in Tessorflow quizs on Coursera (二)
flash多开
洛谷-换教室-(概率期望+dp)
Huawei machine test: imitating LISP operation
C语言练习题-结构体与联合体
获取模块句柄/基址