[devel] Поддержка systemd в post/preun_service скриптах

Alexey Shabalin a.shabalin на gmail.com
Ср Фев 6 20:44:15 MSK 2013


5 февраля 2013 г., 4:14 пользователь Dmitry V. Levin написал:
> On Mon, Feb 04, 2013 at 04:35:26PM +0400, Alexey Shabalin wrote:
>> 4 февраля 2013 г., 16:29 пользователь Pavel Shilovsky написал:
>> > 4 февраля 2013 г., 16:11 пользователь Alexey Shabalin написал:
>> >> 4 февраля 2013 г., 16:02 пользователь Pavel Shilovsky написал:
>> >>> Добрый день!
>> >>>
>> >>> Сейчас работаю над поддержкой и systemd и sysvinit в спеках OpenStack
>> >>> (сейчас там жёстко пробито использование systemd, что делалось на
>> >>> скорую руку). Обнаружил, что для нормальной поддержки обеих систем не
>> >>> хватает того, что скрипты post_service и preun_service умели понимать,
>> >>> что система работает с systemd и вызывали соответствующие команды.
>> >>> Нашёл багу, где аналогичное уже сделано для скрипта service:
>> >>> https://bugzilla.altlinux.org/show_bug.cgi?id=24989
>> >>
>> >> Если Вы заметили, то баг закрыт, т.е. исправлен.
>> >> Больше ничего делать не надо.
>> >> service умеет понимать, зачем этому же учить post/preun_service?
>> >
>> > Скрипты post/preun_service вызывают помимо service команду chckonfig.
>> chkconfig тоже обучен работе с systemd. сервисы успешно регистрируются.
>
> Обучить post/preun_service по аналогии с service все равно нужно для того,
> чтобы проще было поддерживать сервисы, в которых есть service-файлы и
> уже нет init-скриптов.  Но это надо сделать более тонко, чем в
> вышеупомянутом патче.

В общем да. Существуют такие dbus-сервисы (например
accounts-daemon.service) для которых нет init-скрипта, но которые не
мешало бы рестартовать при systemd.

>
>> Другое дело, что они по умолчанию в ALTLinux не включаются.
>
> Хорошо бы запаковать каталоги, описанные в systemd.preset(5), а также
> /lib/systemd/system-preset/99-default.preset оттуда же.
Я упаковал пока федорину копию /lib/systemd/system-preset/90-default.preset
Теперь нужно ещё добавить вызовы systemctl preset.
Я пока не пакую никаких макросов для rpm.
Надо придумать куда лучше их вставить:
http://cgit.freedesktop.org/systemd/systemd/tree/src/core/macros.systemd.in

--
Alexey Shabalin


Подробная информация о списке рассылки Devel