我不明白为什么/var/log/journal/
文件夹这么大。
例如,通过执行命令systemctl -f
,我看到了填充。如果我在 Thunderbird 上单击一封电子邮件,它会生成几十行我认为无用的行。
目前,我在 1 天内生成了超过 1.5GB ( du -h /var/log/journal/
) !
有没有一种方法可以在不停止日志记录的情况下大幅减少此日志?
我不明白为什么/var/log/journal/
文件夹这么大。
例如,通过执行命令systemctl -f
,我看到了填充。如果我在 Thunderbird 上单击一封电子邮件,它会生成几十行我认为无用的行。
目前,我在 1 天内生成了超过 1.5GB ( du -h /var/log/journal/
) !
有没有一种方法可以在不停止日志记录的情况下大幅减少此日志?
您可以通过以下命令减小日志的大小:
这将保留最新的 100M 数据。
将删除除过去 10 天之外的所有内容。
来自
man journalctl
:正如@kurt-fitzner 所写:
更具体地说:激活
SystemMaxUse=
那里的选项,例如SystemMaxUse=100M
只使用 100 MB。编辑后,使用
service systemd-journald restart
激活更改的配置。这将删除多余的日志。journald.conf还有其他可能有用的选项。
您还需要在以下位置进行设置
/etc/systemd/journald.conf
:请参阅:https ://got-tty.org/journalctl-via-journald-conf-die-loggroesse-definieren (德语)
阅读此内容时,您对 journald.conf 的 SystemMaxFileSize 与 SystemMaxUse 选项感到困惑。这清除了它:
SystemMaxUse= 和 RuntimeMaxUse= 控制日志最多可以使用多少磁盘空间。SystemKeepFree= 和 RuntimeKeepFree= 控制 systemd-journald 应该为其他用途留出多少磁盘空间。systemd-journald 将尊重这两个限制并使用两个值中较小的一个。
第一对默认为相应文件系统大小的 10%,第二对默认为 15%,但每个值的上限为 4G。如果文件系统快满了,并且在 systemd-journald 启动时违反了 SystemKeepFree= 或 RuntimeKeepFree=,则限制将提高到实际空闲的百分比。这意味着如果在创建日志文件之前有足够的可用空间,并且随后有其他原因导致文件系统填满,则 journald 将停止使用更多空间,但它不会删除现有文件以再次减少占用空间。 . 另请注意,仅删除归档文件以减少日志文件占用的空间。这意味着,实际上,在清理操作完成后,使用的空间可能仍然超过 SystemMaxUse= 或 RuntimeMaxUse= 限制。
SystemMaxFileSize= 和 RuntimeMaxFileSize= 控制单个日志文件最多可以增长多少。这会影响通过轮换(即删除历史数据)使磁盘空间可用的粒度。默认为使用 SystemMaxUse= 和 RuntimeMaxUse= 配置的值的八分之一,因此通常将七个旋转的日志文件保留为历史记录。