LINUX.ORG.RU

systemd 219

 


2

4

16 февраля был представлен очередной релиз системного менеджера systemd, совмещающего в себе функции системы инициализации, ведения журнала, управления сессиями пользователей и работы с контейнерами. systemd основан на модели зависимостей (в противовес событийной модели), производит отслеживание процессов запущенных сервисов при помощи механизма cgroups ядра Linux, поддерживает механизмы сокет- и dbus-активации сервисов и предоставляет удобный декларативный синтаксис для описания демонов и других сущностей. Это позволяет производить агрессивную параллелизацию при запуске и остановке сервисов.

В рамках проекта также разрабатывается ряд легковесных приложений и демонов, выполняющих второстепенные, но распространённые вспомогательные задачи (т. н. plumbing layer) — от настройки подсистемы VT (systemd-vconsole-setup) и первичного конфигурирования системы (systemd-firstboot) до управления сетью (systemd-networkd) и профилирования загрузки (systemd-bootchart).

Большая часть изменений, вошедших в этот релиз, была направлена на расширение возможностей по работе с контейнерами. Эти изменения сконцентрированы в компонентах systemd-machined и systemd-nspawn и нескольких сопутствующих утилитах.

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

Изменения в ядре systemd:

  • При остановке mount-юнита, соответствующего директории, на которую примонтировано более одного устройства, теперь производится отмонтирование всех устройств на этой точке монтирования. [Раньше, надо полагать, отмонтировалось только последнее. Более того, примонтировать несколько устройств на одну директорию средствами mount-юнитов по-прежнему невозможно. — Прим. пер.]
  • device-юниты, соответствующие приводам оптических дисков, теперь считаются активными только при наличии диска в приводе.
  • Все mount-юниты теперь автоматически получают зависимость BindsTo= от «своих» device-юнитов. Вкупе с предыдущим изменением это обеспечивает автоматическое [небезопасное, но так хотя бы /etc/mtab не захламляется — Прим. пер.] отмонтирование дисков и других носителей при их извлечении.
  • Введена концепция «неподдерживаемых» типов юнитов. Так, например, при попытке активировать busname-юнит на системе без kdbus он будет помечен как сбойный с комментарием «unsupported».

    Список типов юнитов, не поддерживаемых на некоторых конфигурациях:

    • .busname — на системах без kdbus;
    • .swap — в контейнерах; на системах с CONFIG_SWAP=n;
    • .automount — в контейнерах; на системах с CONFIG_AUTOFS4_FS=n;
    • .device — в контейнерах.
  • Суммарное потребление памяти всеми процессами юнита (атрибут memory.usage_in_bytes соответствующей контрольной группы) теперь экспортируется как свойство MemoryCurrent объекта юнита на шине и отображается в выводе команды systemctl status. Например:
    $ systemctl status systemd-journald
    ● systemd-journald.service - Journal Service
    [...]
     Main PID: 210 (systemd-journal)
       Status: "Processing requests..."
       Memory: 90.4M
    [...]
    
    $ busctl introspect org.freedesktop.systemd1 /org/freedesktop/systemd1/unit/systemd_2djournald_2eservice org.freedesktop.systemd1.Service
    NAME                                TYPE      SIGNATURE      RESULT/VALUE                             FLAGS
    [...]
    .MemoryAccounting                   property  b              true                                     -
    .MemoryCurrent                      property  t              94887936                                 -
    [...]
    

    [Стоит отметить, что это свойство отражает суммарный RSS и объём файлового кэша процессов в контрольной группе. Также, разумеется, это возможно только при задействовании контроллера memcg, т. е. CONFIG_MEMCG=y в конфигурации ядра и DefaultMemoryAccounting=true в /etc/systemd/system.conf. — Прим. пер.]

  • Генераторы юнитов теперь можно маскировать (по аналогии с самими юнитами), размещая в /{etc,run}/systemd/system-generators/ пустые файлы (или симлинки на /dev/null).
  • Для юнитов, присоединённых к терминалу (StandardInput=tty, StandardOutput=tty), будет автоматически устанавливаться переменная окружения TERM=vt220 (вместо vt102, как было ранее). Это должно исправить ошибки в приложениях, использующих нетривиальные возможности терминала (например, клавиши PgUp/PgDn).
  • Добавлен механизм, позволяющий процессам «сохранять» в PID 1 открытые файловые дескрипторы (например, на время собственного перезапуска). Эта возможность уже задействована в systemd-journald для того, чтобы избежать потери сообщений при перезапуске.

    Таким образом, все три «ключевых» компонента systemd (systemd, logind, journald) теперь способны перезапускаться с сохранением состояния.

    Технически этот механизм реализован через расширение API sd_notify(3) (функция sd_pid_notify_with_fds()). Для прикрепления файловых дескрипторов к сообщению используется концепция fd passing, а само сообщение должно содержать строку FDSTORE=1.

    Количество файловых дескрипторов, которое процессы юнита могут единовременно «сохранить» таким образом, ограничивается значением директивы FileDescriptorStoreMax= в секции [Service] unit-файлов (по умолчанию 0, т. е. нисколько).

  • Нажатие Ctrl-Alt-Del более семи раз в течение двух секунд теперь вызывает аварийный перезапуск системы, эквивалентный результату выполнения systemctl reboot -f (т. е. при этом все процессы завершаются, а файловые системы демонтируются или переводятся в режим «только для чтения»). Этот механизм стоит рассматривать как более «щадящую» альтернативу Alt-SysRq-B.
  • В файле /etc/crypttab (за его обработку отвечает systemd-cryptsetup-generator) добавлена поддержка параметра header= (как в Debian). Этот параметр позволяет указать расположение LUKS-заголовка, если он хранится на отдельном устройстве.
  • При копировании куда-либо каких-либо файлов (например, в контексте действия C в systemd-tmpfiles) компоненты systemd теперь сначала пытаются создавать reflink (на тех ФС, которые это поддерживают, в частности, btrfs и ocfs2). При отсутствии поддержки выполняется обычное копирование.

Изменения в утилитах и вспомогательных компонентах:

  • Команды loginctl user-status, loginctl session-status и machinectl status теперь также выводят (подобно systemctl status) последние несколько строчек из лога, ассоциированных с данным пользователем, сессией или контейнером соответственно. При этом в последнем случапе имеется в виду не внутренний лог самого контейнера, а лог того юнита, в котором он запущен (т. е., например, вывод systemd-nspawn).
  • Все подкоманды loginctl, которые принимают в качестве аргумента идентификатор сессии или имя пользователя (например, две вышеупомянутые), теперь могут быть вызваны без аргумента. В этом случае они применяются к той сессии, в которой (к тому пользователю, от имени которого) запущены.
  • В systemd-run добавлен параметр командной строки -t (--pty), позволяющий перенаправить ввод/вывод запускаемого процесса в текущую консоль (при этом он всё равно запускается как дочерний процесс systemd). Стоит отметить, что это также поддерживается при запуске процесса в другом контейнере.

    Например, команда systemd-run -t /bin/bash запустит рутовую оболочку в обход PAM и регистрации сессии.

  • В systemd-tmpfiles добавлено действие v — создание btrfs subvolume по указанному пути. В случае невозможности (если используется другая ФС) создаётся обычная директория (эквивалентно действию d).
  • В systemd-tmpfiles добавлено действие a — назначение файлу заданных ACL.
  • В комплект поставки включён скрипт для xinitrc.d, который сообщает systemd --user текущие значения переменных $DISPLAY и $XAUTHORITY. Это позволит «из коробки» запускать с помощью systemd --user графические приложения, взаимодействующие с X-сервером.

    [При этом никаких дополнительных зависимостей не проставляется, поэтому при завершении работы X-сервера все эти приложения не будут корректно прибиты и упадут вслед за сервером. Но лучше так, чем никак. Ждём, пока кто-нибудь придумает, как вписать иксы или вейланд в эту концепцию. — Прим. пер.]

  • В спецификацию формата файла /etc/os-release добавлено новое поле PRIVACY_POLICY_URL=, позволяющее создателям дистрибутива указать ссылку на его Privacy Policy.

Изменения в udev:

  • Часть API libudev, относящаяся к работе с hwdb (декларативной базой данных оборудования), вынесена в отдельную библиотеку sd-hwdb (заголовочный файл sd-hwdb.h), отделённую от libudev.

    Также добавлена вспомогательная утилита systemd-hwdb, позволяющая взаимодействовать с этой базой данных (пересобирать и производить тестовые запросы).

  • Эта самая hwdb теперь включает в себя информацию о «разрешающей способности» колёс прокрутки мышей (что-то вроде «повороту на какой угол соответствует одно событие») и различные сведения о тачпадах.

    [Напомню, что в версии 218 в hwdb начали собирать информацию о разрешающей способности самих оптических сенсоров мышей. Это делается для того, чтобы настройки ускорения курсора и скорости прокрутки работали одинаково на любом оборудовании. Разумеется, необходима поддержка этих свойств со стороны того, кто будет обрабатывать события с устройств ввода; насколько мне известно, это пилят в libinput. — Прим. пер.]

  • Физические размеры сенсорных экранов теперь отражены в атрибутах соответствующих им устройств ввода.

Изменения в journald:

  • systemd-journald теперь устанавливает btrfs-специфичный флаг FS_NOCOW на файлах журнала. Это должно повысить производительность на btrfs, поскольку типичная последовательность обращений к этим файлам [то, как journald работает с этими файлами] достаточно плохо ложится на механизм Copy-on-Write.

    Побочный эффект состоит в том, что также отключается btrfs-специфичный механизм проверки целостности файлов. Однако, это не является проблемой, поскольку формат файла журнала предусматривает собственный механизм контрольных сумм.

    Ещё одно изменение состоит в том, что systemd-journald теперь более корректно обрабатывает события переполнения диска (а именно — сигнал SIGBUS для файлов, отображённых в память) в тех случаях, когда использование fallocate(2) по тем или иным причинам не гарантирует выделения места. [Видимо, имеются в виду Copy-on-Write-ФС, отличные от btrfs. — Прим. пер.]

  • При удалении текущего файла журнала (того, в который сейчас ведётся запись) systemd-journald теперь это замечает и немедленно начинает запись в новый файл.

В networkd добавлена поддержка:

  • FDB-таблиц для соединений типа «мост» (секция [BridgeFDB] network-файлов);
  • сбора LLDP-оповещений (отображаются в выводе утилиты networkctl);
  • нескольких новых типов виртуальных сетевых устройств, а именно ipvlan, gretap, ip6gre, ip6gretap и ip6tnl (директива Kind= секции [NetDev] netdev-файлов);
  • автонастройки link-local IPv6-адресов (директива LinkLocalAddressing= секции [Network] network-файлов);
  • настройки перенаправления и маскарадинга IPv4/IPv6 отдельно для каждого интерфейса (директивы IPForward=, IPMasquerade= секции [Network] network-файлов);
  • явного задания scope (global, link, host) для создаваемых маршрутов (директива Scope= секции [Route] network-файлов);
  • явного задания нижних 64 бит IPv6-адреса при задействовании SLAAC (директива IPv6Token= секции [Network] network-файлов);
  • перечислений и wildcard'ов в директивах секции [Match] всех файлов конфигурации.

    [например, можно указать список MAC-адресов, к которым нужно применить link-файл, или же что-то вроде Name=en* — Прим. пер.]

Другие изменения в networkd:

  • Утилита systemd-networkd-wait-online теперь позволяет указывать подмножество интерфейсов, настройки которых требуется дождаться, и таймаут этого ожидания.
  • systemd-networkd теперь автоматически завершается, когда ему нечего делать (это случается, когда все присутствующие интерфейсы либо не требуют настройки, либо конфигурируются статически). При появлении в системе новых интерфейсов networkd запускается заново, для чего используется вариант механизма сокет-активации.

Изменения, связанные с поддержкой контейнеров:

  • Директория /var/lib/containers, предназначенная для хранения файловых систем контейнеров и образов ВМ, переименована в /var/lib/machines ради единообразия терминологии.
  • Добавлен юнит machines.target, группирующий все автозапускаемые контейнеры в системе.
  • В утилите systemd-nspawn добавлены следующие параметры командной строки:
    • --template (только btrfs) — указание эталонного дерева ФС, которое будет скопировано в корневую директорию контейнера (--directory) в случае отсутствия последней;
    • --ephemeral (только btrfs) — запуск контейнера без внесения изменений в его корневую директорию посредством создания временного btrfs-снапшота этой директории (например, можно сделать systemd-nspawn --ephemeral --directory / и запустить в контейнере копию ОС хоста, не мешая самому хосту);
    • --image — запуск контейнера из образа диска с таблицей разделов MBR или GPT (при этом раздел должен быть один — или, в случае GPT, все разделы должны быть помечены согласно спецификации);
    • --machine, -M — запуск контейнера из дерева ФС или из образа c указанным именем в /var/lib/machines;
    • --network-veth, -n — создание для контейнера собственного veth-интерфейса (теперь для этих интерфейсов по умолчанию задействована вышеописанная директива IPMasquerade=yes, что даёт контейнеру доступ ко всем сконфигурированным на хосте сетям);
    • --port, -p — «проброс» указанного порта из контейнера в хост-систему (в сочетании с --network-veth это позволяет запускать в контейнерах серверные приложения так, как будто они запущены на хосте).
  • Прочие изменения в systemd-nspawn:
    • На директорию /tmp внутри контейнера теперь автоматически монтируется tmpfs
    • Реализована защита от повторных запусков одного и того же образа (read-write блокировка)
    • Почти вся иерархия контрольных групп (/sys/fs/cgroup) теперь отображается внутрь контейнеров (в режиме read-only, за исключением собственного поддерева контейнера)
  • В команде machinectl, предназначенной для взаимодействия с менеджером контейнеров systemd-machined, добавлены следующие подкоманды:
    • machinectl list-images, machinectl image-status — отображение информации об образах контейнеров в /var/lib/machines;
    • machinectl start — запуск контейнера с помощью systemd-nspawn -M (эквивалент systemctl start systemd-nspawn@<имя>);
    • machinectl clone (только btrfs), machinectl rename, machinectl read-only, machinectl remove — различные операции с образами в /var/lib/machines;
    • machinectl copy-from, machinectl copy-to — копирование файлов из контейнера на хост или в обратном направлении;
    • machinectl bind (только systemd-nspawn) — bind-монтирование директорий из хоста в контейнер;
    • machinectl pull-tar, machinectl pull-raw, machinectl pull-dkr (на данный момент только btrfs) — загрузка и распаковка в /var/lib/machines, соответственно, архивов ФС, образов дисков и образов Docker.
  • Последние три подкоманды, предназначенные для загрузки образов контейнеров из Интернета, обеспечивают реализованы посредством нового демона — systemd-importd. Он обеспечивает загрузку данных в фоновом режиме.

P. S.: Да будет срач.

>>> Объявление о релизе

★★★★★

Проверено: beastie ()

Последние три подкоманды, предназначенные для загрузки образов контейнеров из Интернета

Если что-то квакает как дуршлаг… :}

Deleted ()

Сразу скажу,что я не только не умею программировать,но даже и администрировать систему.
Но вместе с тем я успел познакомится с консольными командами и перенаправлением ввода вывода.
И я делал роутер,состоящий из ядра,баша iptables и инициализационного скриптика.
И всё это дало мне понимание красоты и удобства принципа построения unix систем - одна программа - одна хорошо решённая задача,
а быстро приводимые в порядок после релиза дистрибутивы показали мне,что использование общих библиотек для разных программ очень хорошая идея.

ИМХО systemd разрушает этот мир,приближая его к винде,где для решения таких задач мне приходилось редактировать исполняемые файлы в (как их там) hex-редакторах.
Так вот,пусть ваш системд трижды хорош и с исходниками,
я не хочу видеть про него новости,они мне портят настроение.
Вот к вам привязался Gnome,вот и делайте вместе с этой командой отдельную ОС,а любимый мной Linux не трогайте.

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

я не хочу видеть про него новости,они мне портят настроение

Кнопка закрытия окна в верхнем правом углу.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 1)

16 февраля был представлен очередной релиз системного менеджера systemd, совмещающего в себе функции системы инициализации, ведения журнала, управления сессиями пользователей и работы с контейнерами

Насмотрятся, понимаешь, на всякие кеды и емаксы, а потом свои комбайны пишут.

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

И всё это дало мне понимание красоты и удобства принципа построения unix систем - одна программа - одна хорошо решённая задача,

Твои бы слова да разработчика кед в уши. Программ много, а ни одна поставленную задачу не решает.

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

я не хочу видеть про него новости,они мне портят настроение.

Кто мешает вам написать скрипт-фильтр для браузера?

Видел нить на одной странице.

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

systemd разрушает этот мир

Пора снимать постапокалиптик. Массовку наберём из комментов на ЛОРе и опеннете.

AP ★★★★★ ()

Комбайнизм systemd крепчал

anonymous ()

…контейнерами. systemd основан на модели зависимостей…

Предложение начинается с маленькой буквы.

Часть элементов в списках оканчивается точкой, часть — нет. В целом новость информативная, но информация подана избыточно.

Sakka ()
Последнее исправление: Sakka (всего исправлений: 2)
Ответ на: комментарий от Sakka

Насчёт предложений с маленькой буквы: так надо. «The only situation where we find it OK to use an uppercase letter in the name (but don't like it either) is if you start a sentence with systemd.»

Насчёт элементов в списках: fixed, спасибо.

Насчёт избыточности: я перевёл чейнджлог (прокомментировав пункты, которые могут показаться непонятными тем, кто не знаком с внутренним устройством проекта). Вероятно, получилось слишком много, но it is sort of intended.

А вообще — спасибо за обратную связь.

intelfx ★★★★★ ()
Последнее исправление: intelfx (всего исправлений: 3)
Ответ на: комментарий от anonymous

Твои бы слова да разработчика кед в уши.

Дебил чтоли? Ты хотел написать «гном».

anonymous ()

Спасибо. Очень информативная новость!

Sunderland93 ★★★★★ ()

Не читал но осуждаю.

haku ★★★★★ ()

Ставить [[cat]] уже не модно?

Note that this version is not available in Fedora F22/F23 yet. The

linker on ARM segfaults. Since the i386 and x86_64 versions built fine, I decided to release 219 anyway.

Красавец Лёня!

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

Не удивлюсь что в своей гонке за релизами они еще и не такое отчебучат.

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

Кто тебе мешает не пользоваться этой ненужностью?

mandala ★★★★ ()

Да будет срач

Видел на первой странице.

like-all ★★ ()
Ответ на: комментарий от mandala

Точку скрытия под кат задаёт подтверждающий.

linker on ARM segfaults

Красавец Лёня!

Что, тулчейн тоже Лёня сломал?

Не удивлюсь что в своей гонке за релизами они еще и не такое отчебучат.

Имеют полное право, т. к. есть стабильная ветка.

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

Сам ты дебил. Со своими кедами совсем быдлом стал.

anonymous ()

Эта самая hwdb теперь включает в себя информацию о «разрешающей способности» колёс прокрутки мышей (что-то вроде «повороту на какой угол соответствует одно событие»)

и будет плавная прокрутка на нормальной мыши? джва года ждал!

Lincor ()

О, раз уж речь зашла про маунт-юниты, расскажите, зачем имя юнита должно совпадать с хитрым образом заэкранированным путём к Where=?

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

Потому что зависимости проставляются по именам юнитов. А mount-юниты нужны для того, чтобы сервисы и прочие юниты могли «потребовать» ту или иную точку монтирования с помощью механизма зависимостей.

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

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

Точку скрытия под кат задаёт подтверждающий.

Есть апруверы, которые фиг на проверки клали. Не мне тебе рассказывать. Хотя твою без ката подтвердить можно только оперой мини.

Что, тулчейн тоже Лёня сломал?

Ну а кто ещё? Он и погоду за окном портит.

Имеют полное право, т. к. есть стабильная ветка.

Да ради бога, пользователям рачей и федор только веселее.

mandala ★★★★ ()

Однако, это не является проблемой, поскольку формат файла журнала предусматривает собственный механизм контрольных сумм.

Что-то я дальше уже не хочу читать. Ужас.

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

Не обязательно быть дедом, чтобы понимать весь ужас ситуации. Достаточно лишь понимать философию юникс.

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

Достаточно лишь понимать философию юникс.

Дед — это не возраст, это состояние мозгов.

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

Как раз на оборот,я давно ничего своего не делаю,но смотря с одной стороны,как в debian wheezy при загрузке появляются сообщения содержащие слово системд,а сдругой стороны читая обсуждения его в новостях я думаю о том,что однажды я уже не смогу вот так взять ядро с миниумом окружения и на основе этого сделать что-то полезное,так как одно будет тащить за собой другое.
С другой стороны основное пристанище bash скриптов это инит и производные от инита ситемы.
Не будет этого какой стимул будет в поддержании утилит и перенаправления ввода-вывода.

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

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

В общем надо было не инит ломать,а развивать сервисы для стартовых скриптов.

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

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

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

В рамках проекта сустемд инит только маленькая часть, пора бы уже знать. Именно это ее главный недостаток (а кому то достоинство).

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

весь ужас ситуации

А можно без пустых и абстрактных фраз пояснить в чем этот ужас заключается?

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

Мне вот тут недавно говорили про экономию места на диске. Что места на самом деле много и можно уж поставить системд, не очень много потеряю. А зачем тогда бинарные логи? Парсить быстрее? Бенчмарки?

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

Я говорю про то что все как попугаи повторяют что systemd - плохо, но 99% из них вообще плохо представляют себе что это такое и чем же оно плохо. Ну вот лично для тебе чем оно плохо? Компьютер включается и работает, ничего не глючит и не тормозит? Если да, то тебе не всё ли равно?

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

Никак.

После передачи репозитория более другому человеку в январе не было ни одного коммита и ни одного комментария в трекере. Боюсь, что и сам uselessd будет иметь проблемы с совместимостью с текущим софтом(библиотеки взаимодействия с systemd смержены в одну libsystemd0).

Пока забегать вперёд не буду, но при консультации ОПа я собираю минималистичную сборку 219 под jessie. Пакеты есть, идёт закрытый альфа-тестинг, полностью рабочей загрузки пока добиться не удалось: есть проблемы с PAM и tmpfiles.

like-all ★★ ()
Ответ на: комментарий от mbivanyuk

Да, компьютер включается и работает. Да, не тормозит. Но меня тошнит от самого факта, что я пользуюсь программами Поцтеринга, который латентный макопетух и идеи своего говнокода крадёт как раз оттуда.

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

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

Может тебе к доктору бы надо обратиться? ))

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

Автомобиль тоже едет, тормозит, а сколько он выкидывает CO2? Может хватит пропихивать говно? Зачем мне тонны педорастического кода, если у меня и без сустемд все работает как надо?

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

А мне не нужен линукс, а на винде. По такой логике, нужно и линукс похоронить. Но мне он не нужен, а другим нужен.

anonymous ()

Ну блин, еще новость не подтвердили, а тут уже кирпичная кладка.

ashot ★★★ ()

А я думал, новости не будет уже:)

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

Для себя сделал форк 213 версии и пропатчил ее до 214 версии. Сейчас выпиливаю ненужные мне компоненты. В результате думаю будет простенькая система иницилизации. Но даже на текущий момент мне моя версия нравится больше чем 219.

vitalikp ()

Простыня, я задолбался крутить. Даже новость о systemd мешает смотреть другие новости. А теперь представьте как само сустемд мешает развиваться другим системам инициализации!!!

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