SystemdDoctor
служба не работает зависимости цели загрузка

Цель не достигнута: служба ждёт target, который не наступает

Цели (.target) — это точки синхронизации, а не программы. Если служба ждёт цель, которая на этой машине не достигается, она не запустится вовсе и без явной ошибки. Самые частые случаи: graphical.target на сервере и network-online.target без службы ожидания сети.

Вероятные причины

По порядку: сверху то, что встречается чаще.

  1. Указана графическая цель на сервере без графики

    WantedBy=graphical.target или After=graphical.target на сервере не выполняются: цель по умолчанию — multi-user.

  2. network-online.target не достигается

    Эта цель достигается службой ожидания сети (systemd-networkd-wait-online или NetworkManager-wait-online). Если она не включена, цель пассивна и ничего не гарантирует.

  3. Цель указана с опечаткой

    Имя без расширения или с ошибкой превращается в несуществующий unit. Зависимость от него не выполняется никогда.

  4. Собственная цель не включена

    Свои цели тоже нужно включать или тянуть зависимостью. Иначе они остаются неактивными.

Диагностика

Команды идут в том порядке, в котором их стоит выполнять: каждая следующая проверяет то, что осталось после предыдущей.

Все достигнутые цели на машине.

systemctl list-units --type=target --no-pager

Цель по умолчанию: от неё зависит, что вообще запускается при загрузке.

systemctl get-default

Дерево зависимостей: видно, какой цели служба ждёт.

systemctl list-dependencies myapp.service --no-pager | head -20

Решение

Решение своё для каждой причины. Сначала определите, какая из них ваша, — иначе правки наложатся друг на друга.

1. Указана графическая цель на сервере без графики
Почему происходит
WantedBy=graphical.target или After=graphical.target на сервере не выполняются: цель по умолчанию — multi-user.
Как проверить
Посмотрите цель по умолчанию и состояния целей.
systemctl get-default
systemctl is-active graphical.target multi-user.target
Как исправить
Замените на multi-user.target — стандартную цель для серверных служб.
2. network-online.target не достигается
Почему происходит
Эта цель достигается службой ожидания сети (systemd-networkd-wait-online или NetworkManager-wait-online). Если она не включена, цель пассивна и ничего не гарантирует.
Как проверить
Посмотрите состояние службы ожидания.
systemctl status systemd-networkd-wait-online.service NetworkManager-wait-online.service --no-pager | head -14
Как исправить
Включите соответствующую службу ожидания сети. Без неё указание цели бессмысленно.
sudo systemctl enable systemd-networkd-wait-online.service
3. Цель указана с опечаткой
Почему происходит
Имя без расширения или с ошибкой превращается в несуществующий unit. Зависимость от него не выполняется никогда.
Как проверить
Посмотрите зависимости службы.
systemctl show myapp.service -p After -p Requires -p Wants | tr " " "\n" | grep target
Как исправить
Исправьте имя цели полностью, с расширением .target.
4. Собственная цель не включена
Почему происходит
Свои цели тоже нужно включать или тянуть зависимостью. Иначе они остаются неактивными.
Как проверить
Посмотрите состояние цели.
systemctl status mystack.target --no-pager | head -6
Как исправить
Включите цель или объявите, что её требует другой unit.

Пример вывода

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

$ systemctl get-default
multi-user.target

$ systemctl is-active graphical.target
inactive

$ systemctl status myapp.service --no-pager | head -5
○ myapp.service - My application
     Loaded: loaded (/etc/systemd/system/myapp.service; enabled; preset: enabled)
     Active: inactive (dead)

Связанные ошибки

Источники

  • systemd.special(7)
    Описание стандартных целей: multi-user, graphical, network, network-online.
    официальная документация, systemd 255
    сверено 15 сентября 2026
  • Воспроизведено на тестовой машине, systemd 255 (Ubuntu 24.04)
    Проверено на сервере с WantedBy=graphical.target: служба не поднимается после перезагрузки.
    собственная проверка, systemd 255
    сверено 15 сентября 2026