Исправить файл журнала, занимающий все место на диске Linux.

Хотя системы Linux общеизвестно компактны, вы можете обнаружить, что на вашем диске внезапно заканчивается место. Почему это происходит? Подсказку и, возможно, самую большую причину можно найти в системных журналах Linux.

Почему логи занимают так много места на диске?

Журналы — важная часть управления вашей системой Linux. Вы можете видеть, что происходит с вашей машиной, а также устранять возникающие проблемы. Демоны ведения журналов Linux аналогичны средству просмотра событий в Windows. Дневники обычно не занимают много места. Это связано с тем, что большинство дистрибутивов автоматически управляют объемом места, которое они занимают на вашем диске.

Раньше журналы Linux представляли собой обычные текстовые файлы, но, поскольку многие основные дистрибутивы перешли на systemd, они представляют собой двоичные файлы, управляемые журналом, службой systemd. Кроме того, ваш дистрибутив будет использовать rsyslog или syslog-ng.

Поскольку старые журналы больше не актуальны, а большие архивы могут занимать место, ваша система часто «циклирует» их — архивирует, сжимает и, наконец, удаляет — чтобы сэкономить дисковое пространство для контента, который вам действительно нужен.

Хотя вы, возможно, не думаете, что журналы занимают много места, сбойный процесс может заполнить ваши журналы быстрее, чем система сможет их перезапустить.

Если вы проверите свое дисковое пространство и обнаружите, что вам внезапно не хватает места, хотя вы в последнее время не загружали больших файлов, это может быть связано с проблемой в системных журналах Linux. Вам придется выяснить, что заполняет ваши системные журналы, и исправить это.

Вы можете проверить объем используемого дискового пространства с помощью команды du -h:

du -h /вар/журнал

Вы увидите список каждой подпапки, а также общий объем занимаемого ею места:

Исправить файл журнала, занимающий все место на диске Linux. Изображение 1.

Найдите свой дневник

Если вы используете современный дистрибутив Linux с systemd, вы будете использовать программу Journalctl для просмотра журналов; Journald обычно хранит журналы в каталоге /var/log/journal или /run/log/journal, в зависимости от дистрибутива.

Исправить файл журнала, занимающий все место на диске Linux. Изображение 2.

Чтобы просмотреть журнал, введите Journald в командной строке. Есть и другие полезные параметры командной строки. Чтобы просмотреть загрузочные сообщения, используйте опцию -b:

журналctl -b

Вы можете просматривать сообщения системного журнала в режиме реального времени, используя опцию -f.

Если ваш дистрибутив не использует systemd, вы найдете журналы в каталоге /var/log. Даже при использовании systemd некоторые программы по-прежнему хранят свои журналы в этом каталоге. Это обычные текстовые файлы, которые можно просмотреть с помощью такой утилиты, как less.

Например, чтобы прочитать системный журнал:

меньше /var/log/syslog

Вы увидите, что все содержимое файла журнала может содержать тысячи строк:

Исправить файл журнала, занимающий все место на диске Linux. Изображение 3.

Вы также можете отслеживать его в режиме реального времени, используя опцию -f команды Tail:

хвост -f /var/журнал/системный журнал

Как Linux меняет файлы журналов

Исправить файл журнала, занимающий все место на диске Linux. Изображение 4.

В каталоге /var/log вы можете увидеть файлы с именами, заканчивающимися на «log.N.gz», где N — число. Это результат обновления системы старых записей. В большинстве дистрибутивов есть утилита, которая делает это автоматически, называемая logrotate. logrotate обычно настраивается для запуска в качестве задания cron или таймера systemd.

По умолчанию в большинстве дистрибутивов logrotate запускается ежедневно. logrotate сжимает старые журналы с помощью gzip, о чем свидетельствует расширение файла «.gz». Для этого используется пороговое значение, например возраст или размер файла, а также другое пороговое значение для удаления старых файлов журналов.

Параметры logrotate по умолчанию достаточны для большинства пользователей настольных компьютеров. Вы можете настроить поведение logrotate, отредактировав файл /etc/logrotate.conf от имени суперпользователя, а также отредактировав файл cron или файл таймера systemd в вашей системе, но на самом деле эти операции актуальны только для администратора сервера.

Лучше исправить то, что заполняет ваши журналы, а не редактировать файлы конфигурации, чтобы сэкономить место на диске. Если вам абсолютно необходимо изменить конфигурацию, вы можете прочитать страницу руководства logrotate.

Какие журналы безопасно удалять?

Исправлен файл журнала, занимающий все место на диске Linux. Изображение 5.

Если все остальное не помогло и вы хотите освободить место на диске, вы можете вручную удалить архивные файлы журналов, оканчивающиеся на «.gz», перед выполнением logrotate. Вы можете использовать rm, но запускать его нужно будет от имени суперпользователя, поскольку эти файлы принадлежат системе:

sudo rm /var/syslog/syslog.*gz

Эта команда удалит все файлы, содержащие «syslog». и заканчивается на «гз».

Предупреждение: всегда будьте очень осторожны при запуске команд через sudo, особенно деструктивных команд, таких как rm!

Обычно не следует удалять файлы в системных папках, не до конца поняв, что они означают, но отсутствие архивных журналов не вызовет никаких проблем. Однако если у вас возникнут проблемы, вам может потребоваться обратиться к более старым журналам.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *