Re: systemd, чтоб его
On Tue, Sep 16, 2014 at 06:19:19PM +0000, Ivan Shmakov wrote:
> Что примечательно, ??? inetd (почти уверен, ??? во всех его
> вариантах) умеет работать не занимая PID 1. Зачем сие
> потребовалось Systemd ??? совершенно не представляю.
AFAIK, занять pid 1 можно ровно одним способом: быть процессом,
созданным ядром на шаге старта ОС после загрузки. Никакого другого
способа "занять" конкретный pid не существует, ни 1й, ни любой
другой: API для этого в юниксах просто нет.
Соответственно, inetd никогда не "выбирает" себе pid, он просто работает
под тем, под которым оказался запущен. Причём inetd можно запустить
несколько раз и несколько штук, в отличие от init'а, который всегда один,
никогда не получает SIGSTOP и SIGKILL, не останавливается ядром, никогда
не перезапускается, подбирает под себя осиротевшие процессы с оставшимися
у них ресурсами. Такова базовая модель работы юникса.
> IIUC.) Проблема в том, что Systemd очень уж желает занять PID,
> который у меня уже занят ??классическим?? SysV init. (Ну
> разумеется, ??? ??One init to run them all.??) Боюсь, пока я не
> найду внятных обоснований для такого требования, ??? я не готов
> рассматривать Systemd в качестве альтернативы.
Нет ничего удивительного в том, что сервис, желающий стартовать всех,
подменяет init. На месте авторов я бы тоже не заморачивался поддержкой
варианта "systemd + классический init".
--
Eugene Berdnikov
Reply to: