[sisyphus] systemd и зависимость сервисов
Sergei Epiphanov
serpiph на nikiet.ru
Пт Сен 21 10:28:53 MSK 2012
On 20 сентября 2012 18:43 Alexey Shabalin wrote:
> если сервисы так зависят друг от друга, желательно в секцию [Install]
> добавить WantedBy=, RequiredBy=
Спасибо за наводку. Получается, что зависимости можно задавать несколькими
путями:
1) Requires/Wants в секции Unit для скрытой зависимости;
2) RequiedBy/WantedBy в секции Install для явной зависимости;
3) ручным созданием симлинков в каталоге с именем файла сервиса и суффиксом
.wants/.requires.
Но что делать, если политика требует копирования сервис-файла из
/lib/systemd/system в /etc/systemd/system перед любой его правкой? А это
приходится делать из-за того, что в 90% случаев нужно дополнительно вписывать
Before/After в сам файл (больше некуда), а после обновления пакета сервис-файл
от старой версии может привести к неработоспособности новой версии демона.
Впору делать подкаталоги <имя сервис-файла>.after/ и <имя сервис-
файла>.before/ по аналогии с .wants/.requires. Тогда порядок запуска будет
отвязан и не помешают нормальному обновлению пакетов в дистрибутиве.
Я к тому, что .wants/.requires - это лишь половина порядка запуска.
--
С уважением, Епифанов Сергей
Подробная информация о списке рассылки Sisyphus