On Tue, Sep 16, 2014 at 08:49:04PM +0000, Ivan Shmakov wrote: > >>>>> Eugene Berdnikov <b...@protva.ru> writes: > >>>>> On Tue, Sep 16, 2014 at 06:19:19PM +0000, Ivan Shmakov wrote: > >>>>> Artem Chuprina <r...@ran.pp.ru> writes: > > >>> Впрочем, если смотреть шире, то в данном случае это вообще > >>> замечательная и вся из себя прекрасная идея ленивых вычислений. > >>> Которая, кстати, давно частично реализована в юниксах в части > >>> сетевых взаимодействий (inetd). > > >>> Но полезность inetd ограничена тем, что он, во-первых, не умеет > >>> действовать по схеме "при первом запросе поднять сервис и оставить > >>> его работать" (а это довольно часто нужно), а во-вторых, не умеет > >>> поднять зависимости. А в-третьих, тем, что он это умеет только для > >>> сети. > > >> Что примечательно, ??? inetd (почти уверен, ??? во всех его вариантах) > >> умеет работать не занимая PID 1. Зачем сие потребовалось Systemd ??? > >> совершенно не представляю. > > > AFAIK, занять pid 1 можно ровно одним способом: быть процессом, > > созданным ядром на шаге старта ОС после загрузки. Никакого другого > > способа "занять" конкретный pid не существует, ни 1й, ни любой > > другой: API для этого в юниксах просто нет. > > > Соответственно, inetd никогда не "выбирает" себе pid, он просто > > работает под тем, под которым оказался запущен. Причём inetd можно > > запустить несколько раз и несколько штук, в отличие от init'а, > > Внимание, вопрос: а действительно ли необходимо быть init-ом для > решения перечисленных выше задач?
Что значит "быть init-ом"? Иметь pid равный 1? Для задач, которые упоминал А.Чуприна, конечно же, pid=1 иметь необязательно... Но быть сервисом, критичным для функционирования системы, без всякой защиты (от пейджинга, OOM-киллера, ошибочного сигнала и т.п.) просто глупо. Ядро юникса такую защиту init'у предоставляет, и это правильно. > > Нет ничего удивительного в том, что сервис, желающий стартовать всех, > > подменяет init. На месте авторов я бы тоже не заморачивался > > поддержкой варианта "systemd + классический init". > > Для меня, как пользователя, важно, чтобы сервис исполнял мои > желания. Желания самого сервиса меня волнуют лишь постольку > поскольку. Желание назначить pid не равный 1 запускалкe процессов совершенно бессмысленно, если за этим не стоит какой-то конкретный функционал. Вы же ни о каком функционале не упоминали, только о значении pid'a. :) Такие желания беспредметны, они всегда будут игнорироваться. -- Eugene Berdnikov -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20140916214736.gf21...@sie.protva.ru