Пользователь
0,1
рейтинг
9 февраля 2014 в 21:14

Разработка → Systemd — стандартная система инициализации в Debian GNU/Linux

В третьем голосовании по выбору системы инициализации по умолчанию проект Debian GNU/Linux выбрал Systemd. Таким образом, Systemd теперь будет поставляться в большинстве наиболее популярных дистрибутивов GNU/Linux.

Решение может быть пересмотрено путем проведения референдума среди всех разработчиков Debian. В резолюции указано, что в случае, если большинство разработчиков Debian отдадут предпочтение системе инициализации, отличной от systemd, то такое решение будет иметь более высокий приоритет и будет автоматически утверждено техническим комитетом. С учётом большого числа разногласий в сообществе разработчиков, вероятность проведения общего референдума очень высока. (opennet).

Systemd — демон инициализации и системного управления для Linux, разработанный в качестве замены устаревшим sysvinit и bsdinit. Демон использует возможности современного аппаратного обеспечения, выполняя параллельную загрузку сервисов и расходуя меньше ресурсов благодаря отсутствию прослойки командной оболочки.

Основным конкурентом Systemd при голосовании являлась система Upstart, развиваемая компанией Canonical. Плюсы и минусы систем инициализации: opennet, Debian wiki.

Источник: debian mail list.
@JIghtuse
карма
89,2
рейтинг 0,1
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Разработка

Комментарии (39)

  • +3
    Пропал дом…
  • +3
    Очень жаль что в такой дитрибутив как Debian на замену простому инструменту пришел комбайн «all-in-one».
    • –4
      Это да. Пока знакомые-новички от этих systemd / upstart только проблемы имеют.
      • +8
        Какие у новичков вообще могут быть проблемы с системой инициализации? Поставил — работает.
        • +1
          Да, работает… Пока не надо будет узнать, почему не работает тот или иной service/target.

          Когда у меня полгода назад ModemManager.service не запускался:
          Activation via systemd failed for unit 'dbus-org.ModemManager1.service': Unit dbus-org.ModemManager1.service failed to load: No such file or directory. See system logs and 'journalctl -xn' И всё. Логи дают тот же самый текст (No such file or directory). Какого ему файла не хватало — выяснил лишь с помощью community — там у одного была такая же проблема и он трассировал весь systemd с помощью log-level. Но как догадаться новичку, что надо ковырять systemd+journalctl, если ему нужна другая программа, а интернет говорит, что systemd — просто запускалка с функцией SeLinux?..

          Вот недавно на другом компе не запускается графика после перехода на systemd и dist-upgrade. Опять же, пытаюсь сделать systemctl graphical.target enable (или dm.service, или prefdm.service) — на всё ответ — 'unable to load graphical.target (dm/prefdm)' [пишу по памяти, может, немного исказил формулировку]. Что ему надо? Наугад полез в логи — иксы не видят монитор. Перебрал в xorg.conf.d пару видеодрайверов — всё заработало. Скажите ж по-человечески, что проба запуска не удалась. А я уже думаю, что он не может линк поставить, прав нет у него.

          Ну так благо — есть интернет и другой компьютер, с которого можно поискать пути решения. А если б не было?
          Не хватает средств отладки и доступного для новичка мануала.
          • 0
            по моему это очевидно что не хватало файла «ModemManager1.service», а во втором случае очевидно что если бы «он не может линк поставить, прав нет у него» то было бы другое сообщение.
            • 0
              Да не файла ему не хватало, он сам создает нужные линки в свою папку. Уже не помню, кажется, мешал старый конфиг на dbus, не давал ему к шине доступа. В Альте (не знаю, как у других), если приезжает новый конфиг с обновлениями, он не заменяет текущий, а ложится рядом с суффиксом .rpmnew, а я тогда этого не знал ещё. Вот такая банальность, гуру даже предположить не могли такую тупость. Увы…

              Недавно pdnsd ставил, тоже — настроек в pdnsd.service на создание папки в /var/run нету, а без сокета pdnsd не запускается. Благо, у него есть свой лог, там быстро разобрался. А Network+ModemManager есть системные, срут в общий лог.

              А во втором случае: оно-то верно, когда уже ответ знаешь. А так расплывчато звучит, не находите? Тем более кто ж его знал, что systemd на enable не только симлинк делает, но и проверяет текущий runlevel на предмет запуска этой шняги? Сделай линк, а дальше я по цепочке сам перейду, буду в логах ковыряться. А так он и симлинк не делает…
              • 0
                > Тем более кто ж его знал, что systemd на enable не только симлинк делает, но и проверяет текущий runlevel на предмет запуска этой шняги?

                по моему ничего оно не проверяет, судя по коду, у вас есть чем подтвердить ваши слова?

                cgit.freedesktop.org/systemd/systemd/tree/src/shared/install.c#n1461
                • 0
                  Вот попробовал на своей машинке воспроизвести, не получилось. Ту машину пока не ковыряю, работает хоть как-то, и ладно. И так я её тогда на 2 дня оккупировал, пусть хозяйка поработает.

                  Хотя… Может, и не systemd виноват. Железо старое, может, и память сбойнула. А может, обновления криво легли, pppd уже вторую неделю каждый раз в kernel oops сваливается. Чистого дистрибутива для переустановки нет, к сожалению.
  • +3
    Думаю, ссылка на обзор плюсов и минусов каждого из решений здесь не будет лишней: www.opennet.ru/opennews/art.shtml?num=38762.
    • +1
      Спасибо, добавил заодно ссылку на Debian wiki. Там тоже немало информации.
  • +1
    Когда намечен переезд на systemd? Или уже осуществляется?
    • 0
      В следующем стабильном релизе, Jessie (Debian 8).
      • 0
        Нет, со сроками вы явно погорячились. Это же Debian (:

        Насколько я помню, в Jessie наметили пока лишь добавить поддержку systemd в пакетах где есть init скрипты, а не сделать его init системой по умолчанию. Тут планы на systemd в Jessie. В Jessie+1 это более реально.

        Ну и к тому же systemd по умолчанию усложнит жизнь в debian/kfreebsd и прочих hurd'ах.
        • 0
          Нет, всё верно. Systemd отлично работает в Jessie сейчас, для отметки «default» достаточно изменить инсталлятор. Голосование проводилось именно для релиза Jessie.

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

          В kfreebsd и hurd будут по-прежнему использоваться системы, которые используют мэйнтейнеры. Никто не будет насильно впихивать Systemd. «Система инициализации по умолчанию» не означает «единственная и обязательная система».
          • +1
            К сожалению, де-факто оно именно это означать и будет. Потому что альтернативные пути никто по сути не будет тестировать.
        • 0
          в Debian время релиза не нормировано, «следующий релиз» не подразумевает никаких сроков, когда будет готово тогда и будет релиз, это же Debian.
  • +2
    И как они его будут заводить поверх ядра FreeBSD, а тем более Hurd? Оно же к особенностям линуксового ядра даже не гвоздями, а сваями приколочено.
    • +2
      Ответил выше, прокомментирую ещё.

      На wiki дебатов упоминается возможность использования launchd и OpenRC для kFreeBSD и портирования Systemd на Hurd. Но на мейнтейнеров никто не давит, используют что считают нужным.

      Кстати, в связи с шумихой по системе инициализации проскакивала мысль, что система инициализации с трудом может быть портируемой: Debian/Hurd и Debian/kFreeBSD используют костылики для sysvinit; об использовании FreeBSD init в Linux никто даже не задумывался; есть мнения, что Upstart портировать на FreeBSD будет посложнее чем Systemd.
  • +1
    Напомните кто-нибудь ссылку на ответ команды systemd на Systemd propaganda: It's a crap!. Кажется я перевод ответа даже на хабре видел, а сейчас найти не могу.
  • +1
    Эмм. Вы чего? Никто ничего ещё не решил, вообще-то. Прекратите распространять дезинформацию.
    • 0
      Поддерживаю, еще есть вариант если все оставшиеся поставят F (further discussion) выше D (systemd).
      • 0
        Хотя посмотрел последние письма и уже кажется все.
        lists.debian.org/debian-ctte/2014/02/msg00332.html
        • 0
          Ссылка в посте — ответ на вашу ссылку, где подводится итог дискуссии.
          Да, официальной резолюции не было, но решение вряд ли изменят. Комитет и без этого резину тянул долго.

          Меж тем, Ian Jackson решил на несколько дней отойти от своих обязанностей.
          Голоса
          D U O V F — Bdale Garbee
          D U O V F — Russ Allbery
          D U O V F — Don Armstrong
          D U O V F — Keith Packard (Intel)
          U D O F V — Colin Watson
          F U D O V — Steve Langasek (Canonical)
          F V O U D — Ian Jackson
          ? — Andreas Barth
          • 0
            Именно поэтому прошу Вас изменить псто. Никакого решения нету, подождите резолюцию.
            • 0
              Хорошо, каким образом переформулировать? «Технический комитет Debian выбрал Systemd в третьем голосовании по выбору системы инициализации»? Многословно выходит.
              • 0
                Тогда лучше весь пост удалить, если не знаете, как написать. Дезу зачем распространять?

                Кстати, заметьте, то голосование не завершилось.
                • 0
                  Голос оставшегося члена комитета не изменит данного этапа голосования. В продолжении дебатов сомневаюсь.
                  Я написал заголовок таким образом, чтобы он отражал суть выбора и не был слишком длинным. Пост с аналогичным содержанием прошёлся по англоязычным ресурсам.
                  • 0
                    Ну спасибо, Вы присоединились к гильдии журналюг, которым лишь бы новость сделать.
                    Как раз судя по накалу страстей видно, что дискуссия не завершена, и все «новости» преждевременны.
                    • 0
                      Хорошо, я согласен с вами. Закрываю пост.
      • 0
        Да даже не в этом дело. Решение считается принятым тогда, когда будет принята официальная резолюция комитета с Cc: в debian-devel-announce@ и закрытием бага. До этого момента это всё лишь обсуждения.
        • 0
          Да там вообще какая-то драма происходит, уже и председателя хотят снять с поста технического комитета. Честно говоря, немного странно, что из-за инита такой переполох. Это, конечно, важно, но это не настолько критичная вещь. К тому же, остальные они тоже поддерживать будут, просто не по умолчанию. ИМХО, у systemd есть много недостатков, но он все же достаточно стабилен и свою задачу выполняет лучше, чем sysv.
          • +1
            Нельзя всё поддерживать одинаково хорошо, в этом проблема. А systemd всё одеяло перетягивает на себя, и это плохо. Вот гномовцы и кдешники хором прямо поют, что без systemd им не жизнь.
            • 0
              Понятно, что де факто все будут использовать systemd, если он будет по умолчанию. Кстати, мне кажется, что то, что гномовцы и кдешники зависят от systemd тоже повлияло на некоторые голоса. Да и другие дистрибутивы тоже перешли на systemd (из крупных не перешли Ubuntu со своим велосипедом и Gentoo с OpenRC. RHEL со следующей версии тоже перейдет), что тоже важно, ведь для Linux переносимость всегда была важна, учитывая и без того огромный зоопарк стандартов/альтернатив. В общем, не так все скандально, как это рисуют :)
              • +1
                Увы, всё на самом деле хуже.
  • 0
    Пост восстановлен с учётом официального объявления технического комитета, изменена ссылка на источник.
  • +2
    «Будем голосовать пока не победит Systemd» (с) чей-то.
  • –2
    Ну слава богу, закончилась эта мыльная опера. Сторонникам systemd мои поздравления.
  • +2
    systemd создан с ненавистью к людям, написан поперек всей философии юникса и намного сложнее в использовании, чем upstart. Каждый, кто пробовал софт поттеринга, сталкивался с этим стилем, и я совсем не понимаю, как так вышло, что этот колючий кошмар стал таким популярным. :-(

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