myuser@myhost:~$ sudo journalctl > log.txt
myuser@myhost:~$ sudo journalctl --disk-usage
Archived and active journals take up 3.0G on disk.
myuser@myhost:~$ ls -lh log.txt
-rw-rw-r-- 1 myuser myuser 298M Oct 31 15:15 log.txt
Таким образом, мой журнал использует 3G дискового пространства, но фактические записи в журнале только ~300M. Я предполагаю, что метаданные журнала берут отдых его.
Действительно ли возможно изменить отношение метаданных к записям в журнале? Или возможно это не метаданные, но что-то еще?
Почти все те журналы сгенерированы контейнеризированными приложениями, dockerd --log-driver=journald
Обновление:
Мой journald.conf
:
[Journal]
Storage=persistent
RateLimitInterval=0
RateLimitBurst=0
ForwardToSyslog=no
Во-первых, то, что Вы видите, сообщило, поскольку "на диске" может не быть на диске вообще. Как разъяснено в недавнем исправление ошибки , новый язык говорит "в файловой системе", которая может быть в файловой системе в оперативной памяти или поддержана диском. По умолчанию в Ubuntu 16.04, это поддерживается памятью, но существует отчет об ошибках для создания журнала systemd персистентным по умолчанию в Ubuntu .
Теперь, как уменьшить пространство. Если Вы не уверены туда, где начать находить, что документация относительно журналируемого, man -k journald
полезна, чтобы видеть, связали ли Вы уже документацию, установленную об этом:
$ man -k journald
journald.conf (5) - Journal service configuration files
journald.conf.d (5) - Journal service configuration files
systemd-journald (8) - Journal service
systemd-journald-audit.socket (8) - Journal service
systemd-journald-dev-log.socket (8) - Journal service
systemd-journald.service (8) - Journal service
systemd-journald.socket (8) - Journal service
, Так как Вы, кажется, надеетесь настраивать конфигурацию, man journald.conf
, хорошее место для проверки. Там Вы найдете документы для нескольких опций связанными с дисковым пространством, о котором можно считать детали там. Вот сводка:
Compress=
, включенный по умолчанию, сжимает данные SystemMaxUse=
и RuntimeMaxUse=
управление, сколько дискового пространства журнал может израсходовать самое большее. MaxRetentionSec=
максимальное время для хранения записей журнала. См., что упомянутая страница справочника для полных документов затем редактирует /etc/systemd/journald.conf
.
Наконец systemctl daemon-reload && systemctl reload systemd-journald
для внесения изменений вступают в силу.