Зависимость системных сервисов - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь управлять тремя службами, используя systemd. Структура услуги следующая:

enter image description here

Когда цель запускается / останавливается / включается, ее следует распространить на другие службы (A0, A1, A2).

Тем не менее, все еще должна быть возможность запускать / останавливать / включать A0-A2 независимо друг от друга и от A.

Пока что A.target выглядит примерно так:

[Unit]
DefaultDependencies=no
Wants=A0.service
Wants=A1.service
Wants=A2.service

[Install]
WantedBy=multi-user.target
Also=A0.service
Also=A1.service
Also=A2.service

A0.service:

[Unit]
Requires=some-other.service
After=some-other.service
BindsTo=A.target
DefaultDependencies=no

[Install]
WantedBy=multi-user.target

Запуск / остановка работает нормально, однако, когда я запускаю один сервис (например, A0), все другие сервисы запускаются также. Почему это так и как правильно это исправить?

1 Ответ

0 голосов
/ 03 июня 2019

Похоже, что комбинация между "Wants" в A.target и "BindsTo" в A0.service привела к проблеме. Изменение «BindsTo» на «PartOf» решило проблему.

...