Linux Labs

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

Диагностика отказавшей службы

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

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

Журнал попытки

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

Ошибка start сама подсказывает две команды: systemctl status и journalctl -xeu. Журнал удобнее читать без пейджера и только за текущую загрузку машины — ключ -b:

bash
sudo journalctl -u lab-worker -b -n 10 --no-pager  # эта загрузка
sudo journalctl -xeu lab-worker                    # с пояснениями

Ключ -x добавляет к записям пояснения systemd, -e открывает журнал в пейджере сразу на последних записях; выход из пейджера — q. Записи прошлых попыток остаются в журнале, поэтому сверяй время.

Попытка в журнале начинается записью Starting и при отказе кончается записью Failed to start. Между ними — код завершения, а иногда и отдельная запись с причиной от systemd или от самой программы. У 203/EXEC такой записи нет: путь из ExecStart проверяют сами — по файлу юнита и по диску.

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

Записи о попытке

Прочитай записи журнала lab-worker за текущую загрузку и файл юнита службы, а потом проверь, есть ли на диске программа из ExecStart.

Сначала предположи

Что напечатает ls -l /usr/bin/sleeeep?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа
Ubuntu 24.04
Загрузка…