linux:administration:journalctl
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| linux:administration:journalctl [2022/08/05 21:11] – [1.Просмотр логов сервисов] so_v_a | linux:administration:journalctl [2026/08/26 14:45] (текущий) – so_v_a | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | < | ||
| + | |||
| # Шпаргалка по journalctl в Linux | # Шпаргалка по journalctl в Linux | ||
| В Linux работающем под управлением системы инициализации systemd для просмотра логов определенного сервиса или загрузки системы необходимо использовать утилиту **journalctl** | В Linux работающем под управлением системы инициализации systemd для просмотра логов определенного сервиса или загрузки системы необходимо использовать утилиту **journalctl** | ||
| + | |||
| + | Наличие этой утилиты в системе не означает, | ||
| + | Большинство сервисов как и раньше пишут свои основные логи в файлы, а в лог journalctl пишутся сообщения при старте сервисов, | ||
| + | |||
| ## Синтаксис и опции journalctl | ## Синтаксис и опции journalctl | ||
| Строка 48: | Строка 54: | ||
| * **--vacuum-size** - очистить логи, чтобы размер хранилища соответствовал указанному. | * **--vacuum-size** - очистить логи, чтобы размер хранилища соответствовал указанному. | ||
| - | **(!)** | + | > **(!)Note**: Если утилита не выводит ничего, |
| - | : | + | |
| ## Горячие клавиши journalctl | ## Горячие клавиши journalctl | ||
| Строка 66: | Строка 72: | ||
| * **N** - предыдущее вхождение; | * **N** - предыдущее вхождение; | ||
| * **q** - выйти. | * **q** - выйти. | ||
| - | ## Шпаргалка по journalctl | + | |
| + | ## Примеры использования | ||
| Вывод journalctl представляет из себя цельный список всех сохраненных сообщений. Если вы запустите команду journalctl без параметров, | Вывод journalctl представляет из себя цельный список всех сохраненных сообщений. Если вы запустите команду journalctl без параметров, | ||
| Строка 78: | Строка 85: | ||
| ``` | ``` | ||
| где: | где: | ||
| - | * янв 13 20:55:55 - дата и время события; | + | |
| - | * sergiy-pc - хост, на котором произошло событие; | + | |
| - | * kernel - источник события, | + | |
| - | * Linux version 4.15.0-43-generic - само сообщение. | + | |
| Ниже приводятся примеры фильтрации и перемещения. | Ниже приводятся примеры фильтрации и перемещения. | ||
| + | |||
| ### 1.Просмотр логов сервисов | ### 1.Просмотр логов сервисов | ||
| Строка 100: | Строка 108: | ||
| ``` | ``` | ||
| + | ### 2.Просмотр логов в режиме tail | ||
| - | ## 1 | + | С помощью опции -f можно указать утилите, |
| + | ``` | ||
| + | sudo journalctl -f | ||
| + | ``` | ||
| + | В этом режиме less не поддерживается, | ||
| + | ### 3.Просмотр логов загрузки | ||
| - | https://losst.ru/ | + | В логе journalctl содержатся все логи, в том числе и логи загрузки. |
| + | |||
| + | Чтобы открыть лог последней загрузки используйте опцию -b: | ||
| + | ``` | ||
| + | sudo journalctl -b | ||
| + | ``` | ||
| + | |||
| + | Посмотреть список всех сохраненных загрузок можно командой: | ||
| + | ``` | ||
| + | sudo journalctl -list-boots | ||
| + | ``` | ||
| + | будет выведен список загрузок системы с указанием даты и индентификатора. | ||
| + | |||
| + | Теперь, | ||
| + | ``` | ||
| + | sudo journalctl | ||
| + | ``` | ||
| + | |||
| + | ### 4.Фильтрация по дате | ||
| + | |||
| + | С помощью опции | ||
| + | ``` | ||
| + | sudo journalctl --since " | ||
| + | ``` | ||
| + | |||
| + | Опция --until помогает указать **по какую** дату вы хотите получить информацию: | ||
| + | ``` | ||
| + | sudo journalctl -e --until " | ||
| + | ``` | ||
| + | Или можно скомбинироват эти опции чтобы получить логи за нужный период: | ||
| + | ``` | ||
| + | sudo journalctl --since " | ||
| + | ``` | ||
| + | |||
| + | ### 5.Журнал ядра | ||
| + | |||
| + | Если вы хотите посмотреть только сообщения ядра используйте опцию -k: | ||
| + | ``` | ||
| + | sudo journalctl -ek | ||
| + | ``` | ||
| + | |||
| + | ### 6.Настройка формата вывода | ||
| + | |||
| + | По умолчанию journalctl выводит информацию с помощью утилиты less, в которой вы можете её удобно листать и просматривать. | ||
| + | |||
| + | Но формат вывода можно изменить: | ||
| + | * **short** - используется по умолчанию; | ||
| + | * **verbose** - также, как и short, только выводится намного больше информации; | ||
| + | * **json** - вывод в формате json, одна строка лога в одной строке вывода; | ||
| + | * **json-pretty** - форматированный вывод json для более удобного восприятия; | ||
| + | * **cat** - отображать только сообщения, | ||
| + | |||
| + | Чтобы указать нужный формат используйте опцию -o. Например: | ||
| + | ``` | ||
| + | sudo journalctl -o json-pretty | ||
| + | ``` | ||
| + | |||
| + | Или: | ||
| + | ``` | ||
| + | sudo journalctl -eo json-pretty | ||
| + | ``` | ||
| + | ### 7.Очистка логов | ||
| + | |||
| + | Сначала нужно посмотреть сколько ваши логи занимают на диске. Для этого используется такая команда: | ||
| + | ``` | ||
| + | sudo journalctl --disk-usage | ||
| + | ``` | ||
| + | |||
| + | Чтобы уменьшить размер лога можно использовать опцию **--vacuum-size**. Например, | ||
| + | ``` | ||
| + | sudo journalctl --vacuum-size=2G | ||
| + | ``` | ||
| + | Теперь старые логи будут удалены, | ||
| + | |||
| + | Также можно удалять логи по времени. Для этого используется опция **--vacuum-time**. Например, | ||
| + | ``` | ||
| + | journalctl --vacuum-time=1years | ||
| + | ``` | ||
/var/www/html/dokuwiki/data/attic/linux/administration/journalctl.1659733914.txt.gz · Последнее изменение: (внешнее изменение)
