Про systemd и upstart: на злобу дня

Алексей Федорчук

Прошедшая неделя ознаменовалась двумя событиями, связанными с systemd, которые могут оказаться судьбоносными. Первое — третье по счёту, и теоретически, окончательное голосование Технического комитета Debian’а по вопросу выбора системы инициализации в грядущем релизе этого дистрибутива, Jessie, выход которого запланирован на… да разве кто знает, на когда планируются выпуски очередных его релизов?

Пересказывать перипетии этого голосования (и ему предшествовавших) не буду — детали легко найти в Сети (например, здесь). Подчеркну только, что на всех новостных сайтах они трактовались как однозначная победа systemd над upstart (не говоря уж о sysvinit). Хотя тут же последовала серия возражений одного из членов комитета, Йена Джексона — вплоть до предложений о свержении капитана председателя, Бидейла Гарби и проведении всеобщего референдума разработчиков. Что обещало бы продление программы цирка на неопределённое время — и, в конце концов, принятия решения о необходимости дальнейшего изучения вопроса и его обсуждения.

Однако похоже, что на ближайшее время в цирке объявляется антракт. Потому что поддержка решения в пользу systemd последовала с неожиданной стороны — от Марка Шаттлворта. С его высказыванием можно ознакомиться в оригинале и в одном из русскоязычных пересказов (например, в этом). Так что воспроизводить его тоже не буду. А предлагаю подумать над возможной интерпретацией.

Смешно было бы думать, что Марк проникся величием systemd и осознал её техническое совершенство. Вообще, во всех обсуждениях этой системы инциализации техническая сторона дела стоит на предпоследнем месте. Даже на итоги голосования Технического комитета Debian’а в первую очередь повлиял момент юридический: участие в разработке upstart потребовало бы подписания неприемлемого для дебианистов CLA-соглашения с фирмой Canonical.

Поначалу я воспринял высказывание Марка как шутку по мотивам известного анекдота про Ходжу Насреддина, его ишака и эмира Бухарского. Поскольку он выразился в том смысле, что в Ubuntu systemd будет включён опционально после того, как покажет себя стабильно в следующем релизе Debian’а. Который можно ожидать не раньше 2015 года, а то и позднее: последнее время в этом дистрибутиве двухлетний релиз-цикл более-менее выдерживался, но именно в данном случае можно ожидать задержки, связанной с необходимостью тестирования новой системы инциализации.

То есть в Ubuntu появления systemd как опции можно не ждать ранее релиза 16.04 LTS, на постоянной же основе — вообще к релизу 18.04 LTS. А за это время много чего может случиться со всеми персонажами нашей драмы идей. Например, не исключено появление очередного гения, под воздействием комплекса NIH придумавшего новый сверхпрогрессивный super-systemd. Ведь такие случаи бывали — достаточно вспомнить историю восторженного внедрения devfs и столь же единогласного её отторжения, или аналогичный случай, произошедший с HAL.

Однако возможно и более простое объяснение причин принятого Шаттлвортом решения. Всякий, кто внимательно следил за историей развития Ubuntu, не мог не заметить, что Марк — прагматик до мозга костей. И никогда не будет делать то, что можно не делать. То есть то, что делает кто-то другой. Пример с разработкой ядра, то самое лыко, которое так любят ставить в строку ему лично и фирме Canonical, достаточно показателен. Так что возможно, отказываясь от развития собственного upstart’а в пользу всенародно возлюбленного systemd, Марк руководствуется принципом «баба с возу — кобыле легче».

Это одна сторона вопроса. Другая же его сторона — если чего-то не делать нельзя, Шаттлворт и вдохновляемая им фирма Canonical делать это будут обязательно. Например, развивать Unity как единую среду для устройств всех классов — от телефона до супер-персонального компьютера. И при этом Марк со своими воробушками делает всё для сохранения полного контроля над всеми критически важными компонентами — отсюда и идёт пресловутая обязанность подписания соглашения об отказе от имущественных прав для сторонних разработчиков.

Так что отказ от продолжения развития upstart может быть вызван тем, что Марк перестал считать её критически важной частью инфраструктуры Ubuntu. Подобно тому, как сквайр Треллони и доктор Ливси без всякого сожаления передали карту Острова сокровищ Джону Сильверу, когда поняли, что толку от неё более ни на грош. Или даже по аналогии с тем, как Смок Беллью продал секрет системы игры в рулетку в последний момент, когда это ещё можно было сделать. Вспомним, что с Twante Consulting была очень похожая история…

Но ведь система инициализации — важная часть десктопного Linux’а для применителя. И абсолютно несущественная — для смартфона или планшета, ибо их потребитель даже не знает о её существовании. Какой отсюда следует вывод? Правильно, не смотря на все заявления о важности десктопного направления Ubuntu, в глубине подсознания (а может, и сознания) Марк уже забил на него болт. И через несколько лет зулусское слово, означающее «гуманизм», будет ассоциироваться у нас не с операционной системой для настольного применения, а с «облачными» сервисами, с одной стороны, и с карманными гаджетами — с другой.

Если это так — на этом историю десктопного Linux’а можно будет считать закрытой. Ведь последние десять лет движущей её силой была Ubuntu — все шаги в направлении десктопизации этой ОС предпринимались или под её влиянием, или в пику ей. А теперь не станет ни флагмана в десктопном море, ни образа врага, которого всегда можно было обвинить в небрежении ядром в пользу перетаскивания кнопочек и перекрашивания валлпаперсов.»Распалась связь времён» — как сказал автор, известный нам под именем Шекспира…