Finit — простая альтернатива системам иницилизации SysV init и systemd. Он был разработан более десяти лет назад Клаудио Мацуока при помощи реверс инженеринга из EeePC fastinit. Основное внимание уделяется малым и встраиваемым системам, хотя Finit полностью работоспособен в серверных и в настольных системах.
Новый релиз известного системного менеджера мира GNU/Linux — systemd.
В данном выпуске:
метки (tags) udev теперь относятся к устройству, а не к событию, связанному с устройством, — это нарушает обратную совместимость, но только для того, чтобы корректно обработать нарушение обратной совместимости, внесённое ещё в ядре 4.14;
файлы PAM для systemd-user теперь по умолчанию в /usr/lib/pam.d/ (как и должно быть с версии PAM 1.2.0) вместо /etc/pam.d/;
зависимость (runtime) от libqrencode, libpcre2, libidn/libidn2, libpwquality, libcryptsetup теперь опциональна — в случае отсутствия библиотеки соответствующая функциональность автоматически отключается;
systemd-repart поддерживает вывод в формате JSON;
systemd-dissect стал официально поддерживаемой утилитой со стабильным интерфейсом, соответственно по умолчанию теперь устанавливается в /usr/bin/ вместо /usr/lib/systemd/;
Не нуждающийся в представлении системный менеджер для GNU/Linux подготовил очередной релиз за номером 246.
В этом выпуске:
автоматическая загрузка правил безопасности AppArmor
поддержка проверки шифрования диска в юнитах с помощью ConditionPathIsEncrypted=/AssertPathIsEncrypted=
поддержка проверки переменных окружения ConditionEnvironment=/AssertEnvironment=
поддержка проверки цифровой подписи раздела (dm-verity) в .service юнитах
возможность передачи ключей и сертификатов через сокеты AF_UNIX без необходимости сохранения в файл
дополнительный спецификаторы в шаблонах юнитов для различных параметров из /etc/os-release
убрана поддержка .include из юнит файлов (была объявлена устаревшей 6 лет назад)
убрана поддержка недокументированных вариантов syslog и syslog-console для StandardError=/StandardOutput= в юнитах - вместо этого используются современные опции journal и journal+console
автоматические ограничения на размер всех tmpfs монтируемых самим systemd (/tmp, /run…)
дополнительные опции для systemd из команды загрузки ядра
От себя добавлю что релиз выглядит не столь новаторским как прошлый, добавивший systemd-repart, systemd-homed и userdb. Просто множество различных улучшений, удобств и исправлений.
1 июня выпущен Devuan 3 Beowulf, который соответствует Debian 10 Buster.
Devuan является форком Debian GNU/Linux без systemd, который «предоставляет пользователю контроль над системой путём избежания излишней сложности и обеспечения свободы выбора системы инициализации».
Основные особенности:
Основан на Debian Buster (10.4) и ядре Linux 4.19.
Добавлена поддержка ppc64el (также поддерживаются i386, amd64, armel, armhf, arm64)
runit может использоваться вместо /sbin/init
openrc может использоваться вместо механизма уровней работы системы в стиле System-V sysv-rc
eudev и elogind вынесены в отдельные демоны
Новые обои и оформление для загрузчика, менеджера дисплеев и рабочего стола.
Также начата подготовка к следующему выпуску Devuan 4.0 Chimaera, репозитории будущей версии уже открыты.
15 марта представлена бета-версия дистрибутива Devuan 3 Beowulf, который соответствует Debian 10 Buster.
Devuan является форком Debian GNU/Linux без systemd, который «предоставляет пользователю контроль над системой путём избежания излишней сложности и обеспечения свободы выбора системы инициализации».
Из изменений:
Изменено поведение su. Теперь вызов по умолчанию не меняет переменную PATH. Для старого поведения теперь требуется вызывать su -.
Если в PulseAudio нет звука, убедитесь, что в файле /etc/pulse/client.conf.d/00-disable-autospawn.conf строка #autospawn=no закомментирована.
Firefox-ESR не требует больше PulseAudio и может работать от ALSA.
Новый релиз пожалуй самого известного из свободных системных менеджеров.
Наиболее интересные (на мой взгляд) изменения в данном выпуске:
systemd-homed - новый компонент, позволяющий прозрачно и удобно управлять шифрованными домашними директориями, обеспечивающий переносимость (нет необходимости заботиться о разных UID на разных системах), безопасность (бэкэнд по-умолчанию LUKS) и возможность миграции на свежеустановленные системы копированием одного файла. Во всех подробностях рассказано в https://media.ccc.de/v/ASG2019-164-reinventing-home-directories
systemd-userdb - новый компонент, без которого нельзя было реализовать предыдущий сервис. Расширяемая база данных пользователей в JSON формате, заменяющая (в светлом будущем) и дополняющая (начиная с данного релиза) формат /etc/passwd
пространства имён для systemd-journald - теперь можно запустить отдельную копию демона журнала (со своими лимитами, политиками и т. п.) и использовать её для группы процессов
улучшения в поддержке SELinux
опция ProtectClock= для защиты системного времени от модификации, аналог ProtectSystem= и прочих Protect опций
множество улучшений в systemd-networkd в плане гибкости настройки маршрутов, QoS и т. д.
основательно переделан сайт https://systemd.io/ - теперь отличная документация сразу под рукой
новый логотип от Тобиаса Бернарда
И множество других изменений, который наверняка пройдут незамеченными на фоне оживлённой дискуссии по поводу homed и userd :)
7 декабря 2019 года в проекте Debian перед разработчиками был поставлен на голосование вопрос о статусе систем инициализации, отличных от systemd. Варианты, из которых проекту предстояло сделать выбор:
F: Концентрируемся на systemd
B: Systemd, но мы поддерживаем исследование альтернативных решений
A: Поддержка многих систем инициализации важна
D: Поддерживаем системы, отличные от systemd, но не блокируем из-за них прогресс
H: Поддерживаем переносимость, но не блокируем прогресс
E: Поддержка многих систем инициализации обязательна
G: Поддерживаем переносимость и множественные реализации интерфейсов
Срок голосования истек в полночь по UTC 28 декабря 2019 г.
Debian использует достаточно сложную систему голосования - метод Шульце. При голосовании каждый участник ранжирует все опции в порядке личных предпочтений.
Метод Шульце удовлетворяет критерию Кондорсе: если одна из опций победила бы при попарном сравнении каждую другую, то она и объявляется выигравшей. В данном голосовании такой опцией оказалась опция B («Systemd, но мы поддерживаем исследование альтернативных решений»). Соответственно, она и стала обязательной для исполнения.
На практике это означает, что отсутствие init-скрипта в пакете с демоном более не является багом.
Начиная с версии 3.34 GNOME полностью перешёл на инструментарий пользовательских сессий systemd. Данное изменение полностью прозрачно как для пользователей, так и для разработчиков (XDG-autostart поддерживается) — видимо, поэтому оно и прошло незамеченным на ЛОР.
Ранее только DBUS-activated запускались с помощью пользовательских сессий, а остальное делал gnome-session. Теперь от этой лишней прослойки наконец-то избавились.
Приятно видеть, когда открытые проекты готовы к сотрудничеству и идут навстречу пожеланиям пользователей.
От себя: перешёл на KDE по несвязанным с темой новости причинам, но по-прежнему слежу за развитием проекта и искренне надеюсь, что и остальные DE последуют за GNOME в плане унификации управления сессиями.
Разработчики Nitrux сообщили о формировании первых успешно работающих сборок, которые избавились от системы инициализации systemd. После трёх месяцев внутренних экспериментов началось тестирование сборок на основе SysVinit и OpenRC. Первоначальный вариант (SysVinit) отмечен как полностью работающий, но который не рассматривается по определённым причинам. Второй вариант (OpenRC) не поддерживает GUI и подключение к сети на данный момент. В дальнейшем планируется также попробовать создать сборки с s6-init, runit и busybox-init.
Дистрибутив Nitrux построен на базе Ubuntu и развивает собственное DE Nomad, основанное на KDE (надстройка над KDE Plasma). Для установки дополнительных приложений применяется система автономных пакетов AppImage и центр установки приложений NX Software Center. Сам дистрибутив поставляется в форме одного файла и обновляется атомарным способом с помощью собственного инструментария znx. В условиях использования AppImage, отсутствия традиционного разбиения на пакеты и атомарного обновления системы, использование systemd рассматривается как слишком усложнённое решение, так как для запуска базовых компонентов дистрибутива достаточно даже наиболее простых систем инициализации.
Леннарт Поттеринг с радостью представляет вам свой новый проект под названием systemd-homed - новый компонент systemd, который призван упростить жизнь пользователей, дав им возможность легко переносить домашние каталоги. Главная фишка проекта - создание самодостаточного окружения для пользовательских данных и отделение домашних каталогов от системных настроек, что позволяет в конечном итоге получить монтируемый файл-образ с зашифрованными данными окружения, который можно быстро перенести и развернуть на любой системе.
Сэм Хартман, лидер проекта Debian, пытаясь разобраться в разногласиях между мэйнтейнерами пакетов elogind (интерфейс для запуска GNOME 3 без systemd) и libsystemd, вызванных конфликтом между этими пакетами и недавним отказом команды, отвечающей за подготовку релизов, включать elogind в testing-ветку, допустил возможность поддержки в дистрибутиве нескольких систем инициализации.
Если участники проекта проголосуют за диверсификацию систем инициализации, все мэйнтейнеры будут вовлечены в совместную работу по решению этой задачи, или будут назначены специальные ответственные разработчики для работы над данной проблемой, и сопровождающие больше не смогут игнорировать альтернативную систему инициализации, отмалчиваться или затягивать процесс.
После четырех лет использования systemd, основанный на Debian дистрибутив Knoppix, удалил спорную систему инициализации.
В это воскресенье (18 августа *) вышла версия 8.6 популярного линукс-дистрибутива Knoppix основанного на Debian. В основе релиза лежит вышедший 9го июля Debian 10(Buster), с рядом пакетов из веток testing и unstable для обеспечения поддержки новых видеокарт. Knoppix один из первых live-CD дистрибутивов линукс и по сей день пользующийся большой популярностью среди энтузиастов.
Релиз Knoppix 8.6 - первая публичная версия дистрибутива, отказавшаяся от systemd, системы инициализации разработаной Леннартом Пёттерингом из Red Hat, предназначенной заменить sysvinit. В то время как адаптация systemd была объектом для противоречий и критики, на данный момент systemd является выбором по умолчанию в мейнстриме. Используется в апстриме Knoppix - Debian; RHEL, CentOS и Fedora; openSUSE и SLES, а также в Mageia и в Arch.
Вышла новая systemd. Достойны отдельного упоминания (по мнению автора новости) следующие изменения:
команды networkctl теперь поддерживают globbing
публичный DNS от Cloudflare добавлен в список fallback DNS
сгенерированные юниты .device (например посредством systemd-fstab-generator) теперь не цепляют соответствующий .mount в качестве автоматической зависимости (Wants=) - то есть подключённый девайс не обязательно будет примонтирован автоматически
добавлена опция CPUQuotaPeriodSec= для задания отрезка времени по которому считается CPUQuota=
новая опция юнитов ProtectHostname= предотвращает изменение имени хоста
опция RestrictSUIDSGID= для запрета создания SUID/SGID файлов
можно задать network namespace с помощью пути к файлу через опцию NetworkNamespacePath=
можно создавать .socket юниты в определённом network namespace с помощью опций PrivateNetwork= и JoinsNamespaceOf=
возможность активировать .timer юниты при изменении системного времени или часового пояса с помощью опций OnClockChange= и OnTimezoneChange=
опция –show-transaction для ‘systemctl start’ позволяющая просмотреть что именно потребуется для активации данного юнита
поддержка L2TP туннелей в systemd-networkd
поддержка раздела XBOOTLDR (Extended Boot Loader) в sd-boot и bootctl монтируемого в /boot в дополнение к ESP (монтируемого в /efi или /boot/efi)
busctl может генерировать сигналы dbus
systemctl позволяет перезагрузку в определённую ОС (если загрузчик такое поддерживает)
И множество других любопытных новшеств и исправлений.
Уязвимость CVE-2018-19788 присутствует на большинстве операционных систем GNU/Linux и позволяет пользователю, чей UID превышает 2147483647, выполнить любую команду systemctl, равно как и получить root-права.
Проблема существует из-за ошибки в библиотеке Polkit (другое название PolicyKit), заключающейся в неправильной проверки запросов от пользователей с UID > INT_MAX. Где INT_MAX это константа определяющая максимальное значение переменной типа int, равняющаяся 0x7FFFFFFF в шестнадцатеричной или 2147483647 в десятичной системе счисления.
Исследователь по безопасности Rich Mirch (аккаунт в Twitter 0xm1rch) представил успешно работающий эксплоит, демонстрирущий данную уязвимость. Для его корректной работы требуется наличие пользователя с идентификатором 4000000000.
В Twitter'е предлагают гораздо более простой способ получения root-прав:
systemd-run -t /bin/bash
Компания Red Hat рекомендует системным администраторам не создавать аккаунты с отрицательными значениями UID или UID превышающими 2147483647 до тех пор, пока не будет выпущен патч, исправляющий уязвимость.
22 июня был представлен очередной релиз systemd — набора служебных компонентов для операционных систем на основе ядра Linux, в который (в числе прочего) входит система инициализации, служба ведения общесистемного лога (журнала), механизм управления пользовательскими сессиями и подсистема для работы с контейнерами. Система инициализации systemd основана на модели зависимостей (в противовес событийной модели upstart), включает в себя элементы супервизора на базе механизма cgroups ядра Linux, реализует концепции сокет- и dbus-активации процессов и предоставляет удобный декларативный синтаксис для описания демонов и других сущностей.
В рамках проекта также разрабатывается ряд легковесных вспомогательных программ, выполняющих второстепенные, но распространённые вспомогательные задачи — от настройки виртуальных терминалов (systemd-vconsole-setup) до управления сетью (systemd-networkd), SNTP-клиента (systemd-timesyncd) и UEFI-загрузчика (бывший gummiboot).
Проекты Systemd и Leechcraft объявили о своём слиянии. В рамках этого слияния, в Systemd появятся браузер, медиаплеер, а также RSS-, IM- и BitTorrent-клиенты.
добавлена поддержка переменной окружения SYSTEMD_OFFLINE, которая может перевести systemd в автономный режим (без взаимодействия с сервисным менеджером);
можно динамически создавать временные юниты .path и .socket по аналогии с типом mount;
в systemd-mount появился параметр --owner;
новый условный оператор ConditionControlGroupController, проверяющий доступность контроллера;
в юниты и файлы .link, .netdev и .network добавлена поддержка условного оператора ConditionKernelVersion;
systemd-networkd получил поддержку Prefix Delegation для DHCP6;
расширены возможности API sd-bus и sd-event;
долгожданная поддержка VPN WireGuard;
в systemd-notify добавлен параметр --uid;
новая команда systemd-analyze service-watchdogs для вывода состояния watchdog'ов;
инновационные параметры для systemd-analyze: log-level и log-target на смену устаревшим [get,set]-log-level и [get,set]-log-target;
в sysusers.d добавлены строки типа u для одновременного указания UID и GID.
P. S. В списке контрибьюторов замечен один из четырехзвездочных ЛОРовцев.