[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: