У меня проблема с journalctl, я установил максимум 100M в моем journald.conf:
[Journal]
Compress=yes
SyncIntervalSec=5m
SystemMaxUse=100M
ForwardToSyslog=no
ForwardToKMsg=no
ForwardToConsole=no
ForwardToWall=yes
LineMax=48K
ReadKMsg=yes
Что по какой-то причине дает мне журналы всего за 2 дня. Когда я запускаю journalctl --disk-usage, он показывает:
$ sudo journalctl --disk-usage
Archived and active journals take up 106.0M in the file system.
Однако, когда я запускаю journalctl | wc -c показывает, что журналов всего 7 МБ:
$ sudo journalctl | wc -c
7429593
Почему journalctl предоставляет только 7 МБ журналов (2 дня) при использовании 106 МБ? Куда уходит лишнее пространство?
По умолчанию --output = short не отображает все поля. Включая довольно большой идентификатор загрузки и временные метки для каждой записи.
--output = export не совсем похож на формат на диске, так как много текста с именем = значение. Однако как поток сериализации он ближе к реальному размеру.
# journalctl --disk-usage
Archived and active journals take up 56.0M on disk.
# journalctl | wc -c
5420238
# journalctl -o export | wc -c
34683172
В остальном я не совсем уверен. Спецификация формата файла журнала упоминает, что все дополнено до 64-битного выравнивания. Возможно, метаданные, такие как объекты массивов и тегов, также занимают место.
Если вы проверите вывод В архиве а активные журналы занимают 106,0 МБ в файловой системе. означает, что он также включает архивные журналы. Проверьте расположение ниже, чтобы узнать точный размер всех журналов журнала.
# ls -lthr /run/log/journal/<id>/
total 544M
-rw-r-----+ 1 root systemd-journal 32M Jun 25 19:13 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jun 27 04:00 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jun 28 14:38 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jun 30 01:16 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 1 11:56 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 2 22:36 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 4 09:10 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 5 19:48 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 7 06:20 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 8 17:00 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 10 03:42 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 11 14:20 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 40M Jul 13 00:59 system@<some id>.journal
-rw-r-----+ 1 root systemd-journal 32M Jul 14 04:31 system.journal