Linux Labs

Пакеты, службы, журналы / Ступень 6 из 13

Службы под управлением systemd

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 3 из 7 · на машине · 6 мин

Журнал службы

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

Сообщения служб и самого systemd собирает системный журнал, читает его journalctl:

bash
sudo journalctl -u cron -n 8 --no-pager   # 8 последних записей cron

Ключ -u оставляет записи одного юнита, -n — сколько последних записей показать, --no-pager печатает их сразу в терминал.

Заметка

Записи служб и системы читают root и группы adm и systemd-journal, а student — только свои. Поэтому журнал службы читают через sudo: без него journalctl -u cron печатает подсказку Hint: You are currently not seeing messages from other users and the system и -- No entries --, а systemctl status — состояние без строк журнала.

Упражнение · посмотреть

Записи двух служб

cron и nginx только что пережили тот же сбой, что в начале урока. Прочитай восемь последних записей журнала каждой службы.

Войти и начать Машина доступна после входа

Записи о сбое systemd пишет от своего имени, systemd[1]:

Запись Что она значит
Main process exited, code=killed, status=9/KILL главный процесс убит сигналом KILL
Failed with result 'signal' служба упала, её состояние — failed
Scheduled restart job, restart counter is at 1 сработал Restart=on-failure, перезапуск первый по счёту
Started cron.service - … systemd запустил новый процесс службы

Запись Referenced but unset environment variable … EXTRA_OPTS появляется при каждом запуске cron: в его ExecStart стоит переменная $EXTRA_OPTS, её никто не задал, и systemd подставил пустую строку.

Ubuntu 24.04
Загрузка…