Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1
- Astra Linux Special Edition РУСБ.10015-16 исп. 2
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
- Astra Linux Common Edition 2.12
Организация системных служб в Astra Linux
Обновления Astra Linux, выпущенные после очередного обновления 1.5, используют систему управления службами systemd (подробнее см. Systemd). В состав компонент systemd, предоставляемых при установке ОС входят:
- systemd — системная служба управления службами;
- systemctl – инструмент командной строки для управления службами;
systemd-analyze — инструмент командной строки для получения статистики работы служб;
- journald – системная служба ведения журналов служб;
- journalctl — инструмент командной строки для анализа журналов служб.
Инструмент journalctl для анализа журналов системных служб
Общая команда для просмотра журналов:
мар 18 14:28:46.171881 se10704 kernel:
или опция short-iso-precise (доступна начиная с очередного обновления x.7):
2023-03-18T14:28:46.171893+0300 se10704 kernel:
Для фильтрации сообщений по критичности можно использовать опцию -p с указанием уровня критичности. Для обозначения критичности используются следующие значения:
- 0 — emergency — неработоспособность системы;
- 1 — alerts — предупреждения, требующие немедленного вмешательства;
- 2 — critical — критическое состояние;
- 3 — errors — ошибки;
- 4 — warning — предупреждения;
- 5 — notice — уведомления;
- 6 — info — информационные сообщения;
- 7 — debug — отладочные сообщения.
При указании уровня критичности выводятся все сообщения с указанным и меньшим уровнем. Например если указать значение -p 3, то будут показаны все сообщения с уровнями 3, 2, 1 и 0 (т.е. все сообщения об ошибках).
Источники данных для службы journalctl
Служба journald консолидирует данные из следующих источников:
- сокет /run/systemd/journal/stdout – данные, поступающие от служб systemd;
- устройство /dev/kmsg — журнал ядра;
- устройство /dev/log (/run/systemd/joural/dev-log) — данные приложений, поступающие через службу syslog.
Сохранение журналов после перезагрузок
При настройках, заданных по умолчанию служба journald перезаписывает журналы при каждой перезагрузке. Соответственно, вызов инструмента journalctl выведет журнал начиная с момента последней загрузки системы. Для сохранения журналов на постоянной основе (после перезагрузки) следует создать каталог /var/log/journal/, в котором и будут на постоянной основе сохраняться журналы. Для управления постоянным сохранением журналов используется параметр Storage в файле /etc/systemd/journald.conf. По умолчанию этот параметр не задан (имеет значение Auto). При этом каталог постоянного хранения журналов /var/log/journal/:
- используется, если он существует;
- не создается автоматически, и если этого каталога не существует, то журнал будет записываться в /run/log/journal без сохранения между перезагрузками.
Каталог будет /var/log/journal/ создаваться автоматически если значение параметра Storage изменить на persistent и перезапустить systemd-journald.service или перезагрузить ОС. Подробнее см. man journald.conf.
Проверить наличие сохраненных журналов можно командой:
-1 98b893e51c0a43249b8b6e824266fc1c Tue 2023-02-28 07:46:21 MSK—Tue 2023-02-28 15:22:02 MSK 0 cdd48e77de394ebca4df162359bfb412 Tue 2023-02-28 15:22:17 MSK—Tue 2023-02-28 15:41:34 MSK
В примере вывода первое поле представляет собой номер журнала, второе поле - идентификатор загрузки. Далее предоставлен диапазон времени, в течение которого выполнялась запись в журнал. Эти значения можно использовать при выборе журнала для просмотра. Например, просмотреть журнал последней загрузки ОС, можно командой:
Фильтрация сообщений
Просмотр сообщений определенной загрузки
Для выбора загрузки для фильтрации сообщений можно использовать опцию -b с указанием номера журнала. Например, просмотреть журнал последней загрузки ОС, можно командой:
Просмотр сообщений за определенный период времени
Для задания периодов времени для фильтрации событий при просмотре можно использовать опции --snce (с какого времени) и --until (до какого времени) в сочетании с лексемами “yesterday” (вчера), “today” (сегодня), “tomorrow” (завтра), или “now” (сейчас). Например:
Фильтрация сообщений ядра
Чтобы отдельно просмотреть сообщения ядра используется ключом -k:
Фильтрация сообщений определенных служб и приложений
Для фильтрации сообщений отдельных служб можно использовать опцию -u. Например, для просмотра сообщений службы NetworkManager можно использовать команду:
Дополнительные опции просмотра
Следить за появлением новых сообщений:
Ограничение размера журнала
Если журналы сохраняются после перезагрузки, то по умолчанию размер журналов ограничен 10% от объема файлового раздела и максимально может занять 4 Гб дискового пространства. Максимальный объем журнала можно задать явно в параметре SystemMaxUse в файле /etc/systemd/journald.conf.
Удаление журналов
Удалить файлы журналов можно вручную или использовать journalctl. Например:
Удалить журналы, оставив только последние 100 Мб: