systemd-journald通过配置SystemMaxUse、SystemMaxFileSize等参数实现日志自动切割与大小控制,需启用持久化存储并重启服务生效,合理配置可防止磁盘占满并保留必要日志。

Linux系统中日志切割通常有两种方式:一种是通过logrotate工具管理传统日志文件,另一种是使用systemd-journald服务自带的日志管理机制。本文重点说明如何利用systemd-journald进行日志切割与大小控制。
systemd-journald 是 systemd 的日志守护进程,它收集并存储系统启动到当前运行的服务日志。与传统的 syslog 不同,journald 将日志以二进制格式保存在 /var/log/journal/ 目录下(若启用持久化存储),并支持自动的日志轮转和空间限制。
其“切割”不是按时间或大小手动分割文件,而是通过配置最大磁盘占用、单个日志文件大小、保留策略等方式实现自动管理,旧日志会被自动删除或归档。
编辑 journald 配置文件来控制日志行为:
配置文件路径:/etc/systemd/journald.conf
常用关键参数如下:
示例配置:
[Journal] SystemMaxUse=500M SystemMaxFileSize=100M MaxRetentionSec=1month MaxFileSec=1week
上述配置表示:
默认情况下,部分系统未开启持久化日志,重启后日志丢失。要实现长期管理和切割,需确保日志写入磁盘:
创建目录并赋权:
sudo mkdir -p /var/log/journal sudo systemctl touch /var/log/journal
journald 启动时检测到该目录存在,会自动将日志持久化保存至此。
修改配置后,需重启 journald 服务生效:
sudo systemctl restart systemd-journald
查看当前日志磁盘使用情况:
journalctl --disk-usage
输出示例:
Archived and active journals take up 48.2M in the file system.
也可用 journalctl --list-boots 查看已切割的 boot 日志记录。
基本上就这些。systemd-journald 的“切割”是自动的,依赖配置中的大小和时间策略,无需额外脚本。合理设置参数可避免日志占满磁盘,同时保留足够的排查信息。
以上就是Linux日志怎么切割_Linux日志利用systemd-journald服务切割的配置说明的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号