LINUX.ORG.RU

Systemd победил в третьем голосовании по выбору системы инициализации для Debian

 ,


2

2

Бидейл Гарби (Bdale Garbee), председатель Технического комитета Debian, инициировал третье голосование по вопросу перехода следующего выпуска Debian на новую систему инициализации. Новый вариант голосования был предельно упрощён для исключения вторичных вопросов и подразумевал только выбор системы инициализации, которая должна быть использована по умолчанию в выпуске Debian Jessie на базе ядра Linux (т.е. были исключены вопросы одна или несколько систем инициализации должны поддерживаться в Debian и как быть с архитектурами, отличными от Linux). Третье голосование проводится по упрощённой схеме, при которой для принятия решения достаточно обычного перевеса голосов.

На этот раз голосование прошло с перевесом Systemd, что позволяет считать Systemd победителем. За systemd проголосовали Bdale Garbee, который как глава совета обладает правом дополнительного голоса, Don Armstrong, Keith Packard и Russ Allbery. В пользу upstart свой голос отдал Colin Watson. Steve Langasek на первое место поставил продолжение дальнейшего обсуждения, на второе Upstart, на третье systemd. Свой голос ещё не отдали Ian Jackson и Andreas Barth, ранее голосовавшие на upstart, но независимо от их позиции, systemd уже получил перевес в голосах.

>>> Подробности

★★★★

Проверено: Shaman007 ()
Последнее исправление: INFOMAN (всего исправлений: 1)
Ответ на: комментарий от Tribunal

Программисты под что угодно пишут так, чтобы прочитать можно было, например int nReturnCode = 0;

Чем это лучше int r; ? Кстати за бестолковую и безоглядную инициализацию переменных надо голову отрывать.

и дальше в комментариях к функции список возвращаемых значений. (тут этого нет)

Самого беглого взгляда на код достаточно чтобы сказать что список возвращаемых значений находится в sys/errno.h

anonymous
()
Ответ на: комментарий от Tribunal

то продавливание вызвало фактический раскол

категорически согласен.

dinama
()
Ответ на: А без этих авторов... от Moisha_Liberman

Если демон не сетевой, то надо ещё и юнит дописать. Если сетевой — ещё и сокет.

Ты точно знаешь, что такое systemd и как онео работает?

Зачем, если скрипты для OpenRC просты как 3 коп.?

Ну уж никак не проще сервисов.

Без них (авторов) что-то не работало?

Да. Сходи по ссылке в раздел Come again, what good does this do?.

Звук и udev починили

Не припомню, чтоб их когда-то ломали. Может дело в твоих кривоватых ручёнках?

redgremlin ★★★★★
()
Ответ на: комментарий от anonymous

код потеринга более менее очевиден, покрайне мере не более не очевиден чем код linux kernel.

Код поцеринга противоречит Documentation/CodingStyle.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

а когда systemd будет «готов»

Ну PA года три до ума доводили, хотя он и сейчас трещит

А тут умножай на три :)

anonymous
()
Ответ на: комментарий от anonymous

код потеринга более менее очевиден, покрайне мере не более не очевиден чем код linux kernel.

Отлично ляпнул. Код linux (ядра то бишь) тоже местами ужасен. И это я тут роль капитана на себя возьму.

Сам пишу под С/C++, и всегда пишу так, чтобы мой код мог подхватить другой разработчик, здесь же придется гадать, что и как и зачем. А за неинициализированные указатели вообще надо по рукам давать. Вот кусочек кода, например: (комменты под строгим запретом, все ведь понятно, да?)

        int r;
        const void *data;
        unsigned int count = 0;
        int w, i;
        size_t length, allocated = 0;
        boot_id_t *id;

Tribunal
()
Ответ на: комментарий от anonymous

речь шла об очевидности а не о соответсвий кодинг гайда другого проекта

Речь шла об очевидности по сравнению с другим проектом, в котором соглашения о кодировании в основном соблюдаются и не совпадают с поцеринговыми.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

а когда systemd будет «готов»

Ну PA года три до ума доводили

Не, я не о том, когда его отладят. Когда он перестанет расти, после достижения какого feature set?

tailgunner ★★★★★
()
Ответ на: комментарий от dearboy

Ни upstart, ни systemd не поддерживают ничего кроме Linux. SysV Init поддерживается различными ядрами в том или ином виде (то, что в скриптах используются линуксизмы - это проблема не SysV Init, поэтому мнение того разработчика HURD можно засунуть ему в жопу). OpenRC, по сообщениям пробовавших эту систему инициализации, на том же HURD прекрасно работает с уже готовыми скриптами. Вопрос: нафига Bdale проталкивал systemd, когда эта система имеет кучу проблем и просто напросто неготова для других платформ? Более того: если делать поддержку других платформ, то не факт, что Леннарт пример изменения в апстрим и согласится на их поддержку (даже со стороны сторонних разработчиков). Аналогично upstart (те, кто за него голосовали - они так или иначе с Canonical связаны. Достаточно почитать, кто они такие.) - придётся перепиливать и не факт, что в апстрим примут. Итоо при выборе systemd или upstart у Debian будет свой велосипед, но разного рода паршивости. Оставить всё как есть - хуже не станет. Взять OpenRC - уже всё работает и гентушники будут только ради помощи в допиливании, заодно будет больше совместимости.

Quasar ★★★★★
()
Ответ на: Не соглашусь... от Moisha_Liberman

Не соглашусь...
... с утверждением о скорости инициализации в той части что она сильно критична

Да я и не утверждал :) это просто единственный факт, который мне известен об OpenRC. Я просто не могу понять фанатов upstart и голосовавших за нее членов комитета, ибо она, судя по открытым багам, явно более крива.

«козёл-провокатор»

Тоже вариант

northerner ★★★
()
Ответ на: комментарий от jekader

А что, апстарт получил больше голосов и выиграл? Какой-то голос за апстарт не засчитали? Поподробнее, пожалуйста.

anonymous
()
Ответ на: комментарий от GreenTea

Те кто недоволен — сваливайте на FreeBSD

Уже давно, но как же популяризация линукса и хвалёная свобода выбора?

IPR ★★★★★
()
Ответ на: комментарий от tailgunner

Если код умещается на одном экране - да. Правда, зная systemd, он не умещается %)

Именно, там с трудом можно найти хоть одну функцию, которая на экран влезает. Такие, впрочем, есть. Но они в меньшинстве.

Tribunal
()
Ответ на: комментарий от northerner

Эти спекуляции на тему скорости загрузки ничего не стоят. Я ставил Debian на отдельный компьютер и он с sysvinit грузился менее 10 секунд до иксов.

И PulseAudio до сих пор полноценно не причесали - всё также проблемы возникают с ним, решения которых сводятся к удалению PulseAudio.

Quasar ★★★★★
()
Ответ на: комментарий от Tribunal

А за неинициализированные указатели вообще надо по рукам давать.

И во что их инициализировать ? NULL ?

А теперь представим что в результате неких модификаций в коде появилась не вполне очевидная ветка в которой ваш указатель используется раньше чем надо. Так вот Поттеринга компилятор об этом предупредит, а вы будете полдня с жопой в мыле бегать, разыскивая какого хрена программа крешится.

anonymous
()
Ответ на: комментарий от Tribunal

И ужасаемся вместе. Где комментарии? Где инициализация переменных? Почему полно захардкоженных констант?

Комменты есть, да и код достаточно понятный.

Какого черта в коде goto?

goto бояться программистом не быть. Там оно как-раз используется без злоупотреблений, как и должно использоваться.

Siado ★★★★★
()
Ответ на: комментарий от anonymous

anonymous> gcc и clang решают эту проблему.

У меня после такого к тебе есть только одно пожелание: чтобы ты не размножался.

Quasar ★★★★★
()
Ответ на: комментарий от redgremlin

Внезапно...

... да:

точно знаешь, что такое systemd и как онео работает

Мои демоны стартуют при загрузке системы. Их должна запустить система инициализации. Я вынужден их подтачивать подо... что?

Ну уж никак не проще сервисов.

Это на основании чего заявлено? Ладно. Дан сетевой демон. В init-скрипте я пропустил (забыл, например)

depend() {
need net
provide что_надо_не_важно
use logger
}

Т.е., need net у меня отсутствует. Запустится ли демон и будет ли он обслуживать сетевые запросы? В качестве домашнего задания рекомендую аналогичным образом «недописать» сервис.

Да. Сходи по ссылке в раздел Come again, what good does this do?.

На фиг. Уже читал. Бред.

Не припомню, чтоб их когда-то ломали. Может дело в твоих кривоватых ручёнках?

Оггада... В моих. Историю пульсы уже в треде помянули. Историю того, что в Gentoo от такой хорошей жизни метнулись форкать udev и сейчас это называется eudev напоминать?

Moisha_Liberman ★★
()
Ответ на: комментарий от anonymous

А теперь представим что в результате неких модификаций в коде появилась не вполне очевидная ветка в которой ваш указатель используется раньше чем надо. Так вот Поттеринга компилятор об этом предупредит, а вы будете полдня с жопой в мыле бегать, разыскивая какого хрена программа крешится.

Использовать указатель (обращаться к нему), не проверяя его на равенство NULL? Без комментариев. Таких вот «не волне очевидных» веток вообще быть не должно.

Tribunal
()
Ответ на: комментарий от anonymous

anonymous> код для потеринга более менее очевиден

fixed

Quasar ★★★★★
()
Ответ на: комментарий от redgremlin

вы не понимаете. закон тяготения существует вне зависимости от вашего желания спускаться с 10 этажа через окно прыгать без парашюта.
так и юникс-вей является фундаментальным принципом при конструировании системы.

dinama
()
Ответ на: комментарий от tailgunner

Никогда...

... судя по скорости увеличения колонии этого вируса.

Moisha_Liberman ★★
()
Ответ на: комментарий от Deleted

PaulCarroty> что за бред? какой результат не засчитали?

Двоих, голосовавших не в пользу systemd, фактически не допустили к голосованию.

Quasar ★★★★★
()
Ответ на: комментарий от redgremlin

И на эти принципы кладут уже лет 30.

Всегда есть люди, которые кладут - на принципы, на законы, на здравый смысл, да на что угодно. Но ранний Linux строился в соответствии с принципами юниксвея: по-другому было просто невозможно - ресурсов мало.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от segfault

Gentoo, а вообще уже есть смысл думать о своей системе или дистре.

Deleted
()
Ответ на: комментарий от northerner

Я б его...

... так не называл, конечно, если б не вся эта фигня с пульсой. Он-то радостно посверкивая очёчками побежал дальше инновировать, а народу пришлось поднапрячься. В результате, хоть пульса и есть, но результат всех усилий по сравнению с alsa, как-то не особо впечатляет и сейчас вызывает вопрос «нафига».

Moisha_Liberman ★★
()
Ответ на: комментарий от tailgunner

Код поцеринга противоречит Documentation/CodingStyle.

Не видел проектов, которые не противоречили бы каким-либо соглашениеям оформления кода. Что уж говорить, если даже на питоне, языке где оформление кода заложено в архитектуру, умудряются лепить однострочники и постоянно кладут на PEP8

Siado ★★★★★
()
Ответ на: комментарий от Jayrome

Нужен, отдельные патчи они хорошо писали и главное вовремя к различным приложениям. К счастью эти патчи никак не были связаны с systemd и ядром linux.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)

Немного подливы на вентилятор от преподобного Линуса.


Вопрос из зала на очень-очень ломанном английском:
И так, я думал спросить о вашем видении Systemd, мы знаем, что она делает много вещей, как изоляция, запуск сервисов, но так же есть критика того, как она ломает философию unix в плане хорошего выполнения долгих задач, в плане взаимодействующих друг с другом программ, у вас есть мнение на этот счет?

Линус:
Я думаю Systemd…

Профессор:
Может стоит повторить вопрос?

Линус:
Ок. Вопрос был о моем мнении на счет Systemd и о том, как некоторые люди думают, что она ломает философию unix и что она просто другая. Я не знаю скольких людей здесь волнует, что Systemd это такая замена традиционной модели Init. И она, в общем, пытается взять на себя множество других вещей в процессе запуска. Мне, на самом деле, нравится многое из того, что делает Systemd. Лично моя самая большая проблема с Systemd это то, что многие вовлеченные люди похоже думают, что изменение — это хорошо само по себе. Я видел, как Леннарт Поттеринг (разработчик Systemd), например, говорил о том что что-то сделано плохо, потому что это что-то делалось 30 лет и все это — плохое по определению. Что для меня не имеет никакого смысла, потому что я думаю, если это работало 30 лет, оно определенно делает что-то правильно. Это моя точка зрения. В то время как некоторые люди из команды Systemd, похоже, имеют строго противоположные желания, говоря, что если оно работало таким образом 30 лет, то самое время это изменить. И такой склад ума заставляет меня очень нервничать, похоже, что иногда они делают изменения ради изменений и не сильно беспокоятся о том к чему люди привыкли и приспособились… Это, вероятно, причина почему Systemd генерирует столько негативных отзывов, потому что она выбивает людей из ощущения комфорта и чувствует себя неплохо по этому поводу. И в то же время я думаю, что многое, что она делает — интересно. Так что я немного нервничаю по поводу модели разработки и желания ломать вещи, что я считаю огромной ошибкой, но я также думаю, что она показывает множество перспектив.

23.10.2012

Indexator ★★★
()
Ответ на: комментарий от Siado

Комменты есть, да и код достаточно понятный.

Здесь код понятный, это все-таки основной файл journalctl, хотя тоже некоторые вещи вызывают вопросы. Комментов таки мало, настаиваю на этом, как человек, который комментит каждый метод (да, я все-таки на C++ пишу куда больше, чем на голом С)

goto бояться программистом не быть. Там оно как-раз используется без злоупотреблений, как и должно использоваться.

В том файле, на который я ссылку привел имеем бесконечный цикл (тоже гадость) с выходом по goto. Причем, мне очевидно, что можно сделать лучше, хотя понадобятся некоторые телодвижения.

Tribunal
()
Ответ на: комментарий от anonymous

ранний Linux строился в соответствии с принципами юниксвея: по-другому было просто невозможно - ресурсов мало.

так и запишем: следование юниксвею - вынужденная лузерством и нищебродством мера

Бгг. Эти люди построили самый успешный Unix из всех. Лузеры, чо уж там.

tailgunner ★★★★★
()
Ответ на: комментарий от dinama

так и юникс-вей является фундаментальным принципом при конструировании системы

Являлся 30 лет назад. bash — не юниксвей, find — не юниксвей, sed — не юниксвей, grep — не юниксвей, и т.д. Даже ls и то не юниксвеен (он умеет фильтрацию, что по юниксвею должно было быть возложено на отдельную программу фильтрации).

redgremlin ★★★★★
()

я вижу что берет верх именно власть «солидных аргументов»

- все старое написано давно потому говно!
- системд пилится серьезной конторой!!!
- все используют системд
- юникс-вей - мечта прыщавых идеалистов
- кто против, то ретроград и мракобес

сюда добавьте манипуляции «ну что? апстарт или системд??» «давайте проголсуем» «у нас большинство»..

налицо философский раскол. а не технический. если здравый смысл возобладает - оставят как есть до лучших времен (или перейдут на openrc)
не стоит система инициализации подобных расколов.

dinama
()
Ответ на: комментарий от tailgunner

ебать ты остроумный

мне об этом поведала реальность: mac os x единственный юникс, которым могут пользоваться не задроты, любящие навернуть башнину, а обычные люди, занятые своими делами

а линукс так вообще не юникс, а пародия на него, так что ты обосрался в квадрате

anonymous
()
Ответ на: комментарий от redgremlin

ты понимаешь разницу между принципом, идеалом. и конкретной реализацией и/или костылями?
убери идеал и костыли быстро превратят все в помойку.

dinama
()
Ответ на: комментарий от Quasar

поэтому мнение того разработчика HURD можно засунуть ему в жопу

извини, но скорее твое мнение ты засунь себе в задницу, ибо твоя истерика меня даже веселит. А разработчик Hurd(оно внезапно пишется именно так) все внятно и логично обьяснил - SysV завязан на линуксовый /proc, что вызывает потребности городить тучу костылей в других системах.

Вопрос: нафига Bdale проталкивал systemd, когда эта система имеет кучу проблем и просто напросто неготова для других платформ?

Ответ: важнейшее мнение диванного теоретика и админа локалхоста не учтено, сочуствую.

Взять OpenRC - уже всё работает и гентушники будут только ради помощи в допиливании, заодно будет больше совместимости.

Но дальше падает иногда если включить паралельную загрузку. маленький дефект, да. и один из многих.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.