Я создавал RPMS (используя CPake CMake), который устанавливает все в /opt , а затем скрипт postinstall копирует файлы определения сервиса в /etc/systemd/system .
Я поиграл с запуском и остановкой служб также в сценариях RPM postinstall и preuninstall, но это не очень хорошая идея, потому что yum запустит сценарий postinstall перед сценарием preuninstall, если выполнит обновление, и это означает, что если вы попытаетесь обновить службу, то в конечном итоге она не будет работать. Кажется, даже включение / отключение имеет ту же проблему.
Итак, у меня есть два вопроса
Это хорошая идея для установки непосредственно в
/etc/systemd, или после установки нужно скопировать из/optв/etc/systemd? Послеcpиsystemctl daemon-reloadпроисходит "правильный" способ установки служебного файла?Есть ли чистый способ
starting/stopping/enable/disableслужб из RPM, или это лучше оставить вне RPM?
Связанный вопрос (без ответов) для Debian:
Предпочтительный / Идиоматический метод для включения systemd.service из установки пакета Debian
