SystemdDoctor
Wants= [Unit]

Wants= в systemd: мягкая зависимость

Просит systemd запустить другой unit вместе с этим, но не отменяет запуск, если тот не поднялся. Это рекомендуемый вид зависимости для большинства случаев.

Что делает

Мягкая зависимость делает систему устойчивее: падение вспомогательной службы не роняет всё остальное. Именно так работает механизм автозапуска: ссылка в каталоге *.target.wants — это Wants=, объявленный со стороны цели.

Где ставится. В секции [Unit]. Тот же результат даёт ссылка в каталоге имя.target.wants.

Значения

ЗначениеЧто происходит
Wants=redis.serviceкеш желателен, но его отсутствие не критично.
Wants=network-online.targetстандартная пара к After=network-online.target.

Пример

Приложение, которое умеет работать без кеша.

[Unit]
Wants=redis.service
After=redis.service
Requires=postgresql.service
After=postgresql.service

Разные виды зависимости в одном unit — нормальная практика: база обязательна, кеш нет.

Типичные ошибки

Служба запустится даже при упавшей зависимости: приложение должно быть готово к её отсутствию.

Wants= не задаёт порядок: нужен ещё After=.

Ссылки в каталогах *.wants создаются командой включения; удаление unit-файла без отключения оставляет битые ссылки.

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

Рядом стоящие параметры

Где важен на практике

Источники

  • systemd.unit(5) официальная документация
    сверено 15 сентября 2026
  • Воспроизведено на тестовой машине, systemd 255 (Ubuntu 24.04) собственная проверка
    сверено 15 сентября 2026