Linux Labs

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

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

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

Шаг 2 из 8 · теория · 5 мин

Результат запуска

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

В строке Active после failed в скобках стоит Result — чем кончилась попытка: exit-code — процесс вышел с ненулевым кодом, signal — его убил сигнал, timeout — он не уложился во время. Строка Process ниже — какая команда выполнялась и её код завершения: status=203/EXEC.

Коды от 200 до 255 ставит сам systemd: он готовил запуск и не смог его сделать, программа не начала работу. Два частых:

Код Что не получилось
203/EXEC выполнить программу из ExecStart: файла нет или он не исполняемый
217/USER найти пользователя из строки User

Код меньше 200 — например, 1/FAILURE — вернула сама программа: она запустилась и завершилась с ошибкой. Её причину ищут в сообщениях программы и в её настройках.

Те же сведения коротко печатает systemctl show:

bash
systemctl show lab-worker -p Result -p ExecMainStatus
Проверь себя 1 вопрос

Служба упала, в её сводке такая строка. С чего начнёшь поиск причины?

    Process: 1532 ExecStart=/usr/local/bin/report-server (code=exited, status=1/FAILURE)
  • Автозапуск решает, запускать ли службу при загрузке. Строка Process говорит о том, как кончился запуск, — программа вышла с ошибкой.

  • Без пользователя systemd не запустил бы программу и вернул бы 217/USER. Код 1 вернула программа, которая уже работала.

  • Код 1 меньше 200 — его вернула сама программа: значит, она запустилась. С неверным путём systemd вернул бы 203/EXEC.

Коды от 200 ставит systemd, когда не смог запустить программу. 1/FAILURE вернула сама программа: она запустилась и завершилась с ошибкой — причину пишут её сообщения в sudo journalctl -u <служба>.

Главное в шаге

  • Result в строке Active — чем кончилась попытка: exit-code, signal или timeout.
  • Код от 200 — systemd не смог запустить программу; код меньше 200 вернула сама программа.
Ubuntu 24.04
Загрузка…