/var/log/journal 很大吗?

/var/log/journal 很大吗?

我不明白为什么/var/log/journal/文件夹这么大。

例如,通过执行命令systemctl -f,我看到了填充。如果我在 Thunderbird 上单击一封电子邮件,它会生成数十行我认为没用的内容。

du -h /var/log/journal/目前我已经在1天内生成了超过1.5GB( )!

有没有一种方法可以在不停止日志记录的情况下大幅减少该日志?

答案1

您可以使用以下命令减小日志的大小:

sudo journalctl --vacuum-size=100M

这将保留最近的100M数据。

sudo journalctl --vacuum-time=10d

将删除除最近 10 天之外的所有内容。

man journalctl

--vacuum-size=,--vacuum-time=,--vacuum-files=
    删除最旧的归档日志文件,直到它们使用的磁盘空间
    低于指定的大小(通常用“K”、“M”、“G”和
    “T”后缀),或者所有归档日志文件均不包含早于
    指定的时间跨度(通常用“s”、“m”、“h”、“days”指定,
    “月”、“周”和“年”后缀),或者不超过指定的
    剩余的单独日志文件数。请注意,运行 --vacuum-size=
    对 --disk-usage 显示的输出只有间接影响,因为
    后者包括活动日志文件,而清理操作仅
    对归档日志文件进行操作。同样,--vacuum-files= 可能不会
    实际上将日志文件的数量减少到指定的数量以下,
    因为它不会删除活动日志文件。

    --vacuum-size=、--vacuum-time= 和 --vacuum-files=可以组合成
    单次调用即可执行大小、时间和
    归档日志文件的文件数限制。指定以下任一值
    这三个参数为零相当于不执行特定的
    限制,因此是多余的。

    这三个开关也可以与 --rotate 组合成一个命令。
    如果是,则首先轮换所有活动文件,然后请求清理
    操作紧接着执行。旋转的效果是,所有
    当前活动文件已归档(并且可能还有新的、空的日志
    文件作为替换打开),因此清理操作具有
    它可以最大程度地发挥其作用,因为它可以将迄今为止写入的所有日志数据都考虑进去。

答案2

作为@kurt-fitzner 写道

教他们编辑/etc/systemd/journald.conf,你就教他们如何永久地解决问题。

更具体地说:激活SystemMaxUse=那里的选项,例如SystemMaxUse=100M仅使用 100 MB。

编辑后,使用service systemd-journald restart激活更改的配置。这将删除多余的日志。

journald.conf 还有其他可能有用的选项

答案3

您还需要在其中进行设置/etc/systemd/journald.conf

SystemMaxFileSize=100M

看:https://got-tty.org/journalctl-via-journald-conf-die-loggroesse-definieren(在德国)

答案4

阅读本文时,我对 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=,因此通常会保留七个轮换日志文件作为历史记录。

相关内容