LINUX.ORG.RU

Релиз systemd 230

 


4

8

Представлен выпуск системного менеджера systemd 230. Из новшеств можно отметить включение по умолчанию DNSSEС и режима чистки процессов пользователя после завершения сеанса, поддержку унифицированной иерархии cgroup, возможность настройки прокси ARP для сетевого интерфейса, новые типы юнитов generated и transient, новую команду systemctl revert и возможность создания виртуальных прямых сетевых ссылок между контейнерами.

Основные изменения:

  • В DNS-резолвере systemd-resolved по умолчанию включен DNSSEC. DNSSEC доступен в режиме allow-downgrade (автоматический откат на режим без DNSSEC) и может быть отключен через настройку DNSSEC в resolved.conf или на этапе сборки при указании опции configure --with-default-dnssec=no. Дистрибутивам пока не рекомендуется включать DNSSEC по умолчанию, пока не будут выявлены все возможные несовместимости режима DNSSEC с DNS-серверами.
  • В systemd-resolve добавлена возможность резолвинга DNS-записей DANE (DNS-based Authentication of Named Entities) при указании опции --tlsa и OPENPGPKEY при указании опции --openpgp, а также создания дампа raw-данных записей DNS при указании опции --raw=дамп.
  • В systemd-logind по умолчанию обеспечено принудительное завершение процессов, запущенных в составе пользовательского сеанса, после выхода пользователя из системы. Управлять принудительным завершением можно через опцию KillUserProcesses в logind.conf, которая теперь выставлена в значение yes по умолчанию, что требует отдельных настроек, если необходимо сохранить работу длительно выполняемых пользовательских процессов (для работы screen и tmux требуется специальная настройка сервисов, например, включение т.н. lingering через loginctl). Для восстановления старого поведения на этапе сборки можно указать опцию --without-kill-user-processes.
  • В systemd-logind добавлены новые настройки SessionsMax и InhibitorsMax, которые по умолчанию установлены в значение 8192.
  • В systemd-logind добавлена поддержка обновления конфигурации по сигналу SIGHUP.
  • Добавлена поддержка унифицированной иерархии cgroup (в ядре с 4.5), для задействования которой в systemd при загрузке требуется указать опцию командной строки ядра systemd.unified_cgroup_hierarchy=1. Для унифицированной иерархии также добавлен контроллер cgroup io, который дополнил контроллеры memory и pids.
  • Поддержка протокола LLDP (Link Layer Discovery Protocol) расширена возможностями использования пассивного (только приём) и активного (отправка) режимов. Пассивный режим включен по умолчанию в systemd-networkd, а активный режим включен по умолчанию в изолированных контейнерах с адресацией внутренней сети. Для просмотра статистики можно использовать команду networkctl lldp.
  • Добавлена возможность настройки уникальных идентификаторов IAID и DUID, отправляемых в запросах DHCP. Идентификаторы могут быть определены как для всей системы, так и для отдельных файлов .network при помощи опций DUIDType, DUIDRawData и IAID.
  • В systemd-networkd добавлена возможность настройки прокси ARP для отдельных сетевых интерфейсов, используя опцию ProxyArp в файлах .network. Кроме того, в файлы .netdev добавлены опции MulticastQuerier и MulticastSnooping, позволяющие включить режим отправки запросов и прослушивания IGMP-трафика.
  • В файлах .network представлена новая опция PreferredLifetime, позволяющая определить время жизни IP-адреса.
  • В DHCP-сервере, встроенном в systemd-networkd, активирована по умолчанию опция EmitRouter, включающая поле DHCP Option 3 (Router).
  • Тестовая утилита systemd-activate переименована в systemd-socket-activate и перемещена в /usr/bin.
  • В systemd-journald задействован отдельный поток для сброса прокэшированных данных на диск при закрытии файлов с журналом, что решило проблемы с задержками записи в лог на медленных дисках.
  • В journalctl добавлен новый метод вывода -o short-unix, при котором к записями в логе добавляется префикс с эпохальным (UNIX) временем (число секунд с 1970 года). Также добавлена опция --no-hostname для исключения столбца с именем хоста.
  • Устройства фреймбуфера, сканеры и 3D-принтеры теперь подключаются в режиме uaccess и доступны для вошедших в систему пользователей.
  • В опции DeviceAllow теперь можно указывать спецификаторы (начинаются с символа %).
  • В systemctl show добавлена опция --value, позволяющая вывести только содержимое заданного свойства юнита без указания его имени.
  • Для автоматически сгенерированных и созданных в процессе работы через обращения к API файлов добавлены новые типы юнитов generated и transient.
  • Добавлена новая команда systemctl revert для отката к предоставляемой поставщиком версии файла юнита в случае внесения в файл юнита локальных изменений.
  • В machinectl clean добавлена возможность автоматического удаления всех или только скрытых образов контейнеров.
  • В systemd-tmpfiles добавлен новый тип записи «e», позволяющий организовать очистку директорий, если они уже существуют.
  • В systemd-nspawn добавлена поддержка автоматического исправления UID/GID и ACL для всех файлов и директорий в контейнере для их соответствия диапазону UID/GID, выбранному при запуске контейнера.
  • В systemd-nspawn добавлена новая опция --network-zone для создания виртуальных прямых линков между контейнерами.
  • Для socket-юнитов добавлены опции TriggerLimitIntervalSec и TriggerLimitBurst для настройки лимитов на возможное число активаций в заданный промежуток времени.
  • Компонент systemd-bootchart вынесен в отдельный репозиторий.
  • Из состава удалён systemd-bus-proxyd, так как kdbus вряд ли будет принят в ядро в своём текущем виде.
  • Удалены библиотеки libsystemd-daemon.so, libsystemd-journal.so, libsystemd-id128.so и libsystemd-login.so, которые ранее были объявлены устаревшими.
  • Удалена опция Capabilities, вместо которой следует использовать AmbientCapabilities и CapabilityBoundingSet.

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

★★★★

Проверено: Falcon-peregrinus ()
Последнее исправление: Klymedy (всего исправлений: 5)

Ответ на: комментарий от border-radius

Арч с OpenRC как раз свалил. И с тех пор, кстати, не наблюдал ни единого отвала системы после обновления.

Но как так? Systemd же глючное поделие, которое падает каждый раз само по себе. Неужели всё что тут пишут уважаемые господа - неправда?

Не может быть чтобы дистрибутивы брали systemd из-за того что он снимает головняк с мейнтейнеров, ведь эти люди любят сидеть, писать и править полотна портянок шелл-скриптов для каждого сервиса, ведь вынесение общей функциональности в удобный инструмент - это ересь, за которую надо жечь на алтаре великого UNIX-way, ну кроме исторически сложившихся вещей вроде ядра, графического сервера, половины утилит из coreutils, которые перекрываются по функциональности процентов на 80%.

Мы ведь все отлично знаем, что RedHat, CentOS и Федора - верные шавки режима кровавой шапки, которая злостно коммитит в ядро свой код и заставляет им пользоваться. Debian был злостно саботирован, Арч - пошёл на поводу моды, Ubuntu сломались под угрозой расстрела лидеров зондер-командами.

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

В этом мире зачастую выбор ограничен двумя стульями

Понятно, разумного ответа не будет.

Жаль.

Olegarch
()
Ответ на: комментарий от border-radius

Цель - иметь такую возможность. Для меня, как простого пользователя, systemd не имеет никаких преимуществ. Дистрибутивам, поддерживающим работу без systemd пришлось форкнуть udev. А в случае если я захочу использовать дистрибутив без systemd, я не смогу использовать ни pulseaudio, ни networkmanager и кто знает что будет следующим. Меня такое положение дел не устраивает.

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

Ліл. Нет, ну правда. Стоило арчу перейти на системд - вся хрень с отвалом после обновлений резко прекратилась. Последний мажорный факап был с темами GTK3, но это уже от дистра не зависит [здесь был очередной пиар темы Vertex под 3.20].

А так да, мы все банальные рабы красношапочных поработителей и по идее сильно от этого страдаем.

border-radius
()
Ответ на: комментарий от zink

Пруф?

выше по треду, с трактовкой нуля.

куда уж мне

Странная корреляция - те, кто яростно критикует systemd неспособны запилить альтернативу,

у меня runit/init. мне незачем пилить еще одну альтернативу?

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

А в случае если я захочу использовать дистрибутив без systemd, я не смогу использовать ни pulseaudio, ни networkmanager

4.2. В Alpine (на который systemd пока что вроде даже не портировали) спокойно работает и то, и другое.

border-radius
()
Ответ на: комментарий от alozovskoy

Обычно на таких самоварчиках работаем.

$ dmesg
[    0.354047] smpboot: Total of 16 processors activated (89603.52 BogoMIPS)
$ systemd-analyze
Startup finished in 5.806s (kernel) + 3min 51.429s (userspace) = 3min 57.235s
$ systemd --version
systemd 215
+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR
Но systemd здесь НИЧЕГО не может ускореть, и значит ненужен.

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

... обсуждение пошло на третий круг 8)

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

Как воду в ступе толочь - кроме оскорблений ничего дельного не услышал. Да и оскорбления - тупые, плоские, дурно пахнущие, не то, что во времена былых баталий. 8) Где эстетика флейма, где вкус, где пиитет?.. эх... были времена, были эпические срачи... 8) А щас - только самоповторяться и могут, шакалята...

Тьфу, скучные ребята, неинтересные... Бывалому каннибалу даже смотреть не на что...

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

Да слабо, СЛАБО! И мы не говорим за дистрибутивы, они как раз на поводу DE.

Прекрасная песнь на счёт форка ;) Снова день начинает радовать.

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

systemd нарушает K.I.S.S.,

ломает обратную совместимость с unix-прародителями GNU/Linux системы

С BSD что-ли? Совместимость ради совместимости? Впилят в ядро BSD поддержку cgroups - будет и с ним совместимо. А то ради совместимости с маргинальными ОСями отказываться от плюшек, которые даёт ядро линукса - идиотизм. Всё равно как если бы BSD отказались бы от PF, потому что оно не совместимо с ядром линукса.

На тех, кто репортит баги, созданные systemd и присылает пулл-реквесты в репозитарий systemd я смотрю как на удобрение для systemd. И компост для redhat.

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

Всё ясно, фанатик. Скажи-ка, дядя, а linux - система с unix-идеологией или нет? И откуда тогда там монолитное ядро? И что с Xorg? Согласуется с идеологией или тоже - компост?

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

Странно, у меня системы что на upstart были стабильные и юзабельные, что на systemd остались. Может у кого-то руки растут не оттуда?

Почему в ведроиде нет systemd? Потому что гугл - идиоты? Ведь с системд ведроид грузился бы не за 20-30 секунд, а за 2-3, так ведь? Так почему же его там нет, ведь он такой хороший?

Сам придумал аргумент, сам его опроверг? Systemd там нет, потому что гугл его туда не впилил. Поэтому же там нет половины GNU утилит и вместо Х-ов - свой ДМ. Про скорость загрузки тебе уже разжёвывали, что никто тебе не обещал заставить сервисы работать в 100 раз быстрее. Systemd изначально заявлял хорошую паралельность запуска и вненяемый граф зависимостей, ускорение запуска - это побочка отсутствия необходимости стартовать всё по цепочке или ждать по таймауту чтобы «ну уж точно стартануло».

Твоя аппеляция к «почему гугл это не добавил» вообще смешная - гугл по минимуму берёт софт под GPL чтобы закрывать при желании всё или частями.

Почему, наконец, его нет в куче дистрибутивов, использующих runit, и они грузятся за 7-8 секунд?

Почему эти дистрибутивы не используются в продакшне и нужны 1.5 землекопам? Тоже повод задуматься?

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

Чо, мля, ps -uf уже отменили? Сказочно! 8)

Что-то мне сдаётся, что ты в администрировании понимаешь ещё меньше, чем в английском. То что ты ручками можешь дёрнуть - это всё здорово, а кто будет это отслеживать, рестартовать при необходимости и т.д.? Ещё одна простыня на шелл-скрипте в /etc/init.d/ ? Или может быть отдельный сервис не связанный с инитом?

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

Так а что они могут предложить? Их пирамиды не построены, у многих уровень ниже нуля, хе-хе ;) Мне как шесть было, я только читал, вякнуть (дабы лохом не быть) в тред боялся, а здесь сыпят приятными словами «форк» ;) Они не то что не понимают, просто базы знаний нет. Зато в нете сейчас принято, что не так: «Да ты мудак» ;) и все подхватывают ;) Плюс лето близко...

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

откуда ты значешь, что развитие, если тебе все равно «что у тебя там». если тебе все равно, то ты не в теме.

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

Я ТЕБЯ спрашивал, компонент батарейки? Или человека, который что-то сделал для этого проекта, и возмутился багами в этом проекте?

ТВОЁ мнени мне глубоко до пятой точки, меня интересовало мнение парня @like-all

Вот теперь точно бомбануло, аж стёкла зазвенели. Твоё мнение тут тоже мало кого интересует, но ты же пишешь.

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

И мы не говорим за дистрибутивы, они как раз на поводу DE.

Что делать с дистрибутивами у которых в качестве основного DE - кеды? Что их сподвигло использовать systemd?

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

Твоё мнение тут тоже мало кого интересует, но ты же пишешь.

Ну почему? А меня вот интересует. И некоторые мысли по делу, что еще надо?

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

костыльные iptables (которые как-то работают, но недостаточно хорошо, по сравнению с опеньковским pf)

Слишком толсто.

ломает обратную совместимость с unix-прародителями GNU/Linux системы

Они лет тридцать как мертвы. Но ты продолжай, поддерживай «совместимость» с System V :)) В кавычках потому что 98% твей скриптолапши на той самой системе не работает.

усилия, потраченные несколькими поколениями уважаемых разработчиков

Это IT, детка, здесь ВСЕГДА всё быстро менялось.

куче дистрибутивов, использующих runit

Всех двух? Или трёх? :) И четыре пользователя на всех.

они грузятся за 7-8 секунд

А, ты тоже из тех даунов, которые тут меряются systemd-analyze без списка сервисов.

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

... обсуждение пошло на третий круг 8)

Ты только сейчас заметил, что только одну и ту же мантру повторяешь? Ну, хоть так.

Как воду в ступе толочь - кроме оскорблений ничего дельного не услышал. Да и оскорбления - тупые, плоские, дурно пахнущие, не то, что во времена былых баталий. 8) Где эстетика флейма, где вкус, где пиитет?.. эх... были времена, были эпические срачи... 8) А щас - только самоповторяться и могут, шакалята...

Уж если слился, умей хоть уйти достойно.

Тьфу, скучные ребята, неинтересные... Бывалому каннибалу даже смотреть не на что...

Да мы поняли, что виноваты, что у тебя ни одного технического аргумента нет.

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

Чо, мля, ps -uf уже отменили? Сказочно! 8)

Как мне, мля, отследить потомка после double fork с завершением родителя?

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

В этом мире зачастую выбор ограничен двумя стульями. Если до тебя это ещё не дошло, то рекомендую устроиться на соответствующую работу и вкалывать до просветления

Ты работаешь на зоне?

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

Наверное все таки не bsd а systemv

Так совместимость с systemv-то как раз есть. Я уж не думаю, что человек настолько в теме «плавает».

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

И некоторые мысли по делу, что еще надо?

Например? Совместимость с BSD ради совместимости с BSD?

Или «это нарушает UNIXway, хотя я не до конца понимаю что такое unix-way, поэтому просто буду говорить что всё, что мне не нравится его нарушает»?

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

Прекрасная песнь на счёт форка ;) Снова день начинает радовать.

Никто слова «форк» не говорил. Можешь коммитить в OpenRC, его всё ещё сватают как альтернативу systemd c переменным успехом. Достаточно достигнуть паритета по фичам и успех гарантирован, судя по количеству людей с аллергией на systemd. :)

Canonical свой апстарт закопало, так как хотели в конце получить что-то вроде systemd, но раз уж всё делают за них, то грех не воспользоваться.

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

А вот твои писульки совсем не интересны, честно. Может, читать и умеем, анализировать прочитанное - нет, жаль. Особенно радует твоё понимание пути UNIX.

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

Да, но это не целое решение. Поэтому в OpenRC и нету полноценной поддержки отслеживания процессов. Вариант с обработчиком, который вызывается при событии, их, видимо, не устраивает, а дальше остаётся только написание полноценного супервайзера, но это на shell не пишется.

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

Особенно радует твоё понимание пути UNIX.

Ну поделись своим тогда. А то все его вспоминать любят, а как начинаешь обсуждать - так выясняется что его и не понимает никто.

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

Да, но это не целое решение.

Что это такое и зачем оно нужно?

P.S. я стараюсь избегать софта с дабл/трабл форками.

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

Где-то можно, а где-то нет. Сейчас можно, а завтра нет. Есть даже сознательный гражданин, который создал оверлэй для генты, где отвязал гном от системд. Но как знать что будет завтра?

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

Дальше не читал

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

Онаним: Попробуй запустить это в своей системе (правда там лор слегка синтаксис командочик kill исправил, но разберешься, где длинный дефиз на два нормальных исправить), - у меня, понятное дело, работать не будет, а вот у тебя - наверняка сработает так, как надо 8)

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

Теперь понятно. Всё равно неудобно, но менее неудобно чем могло бы быть.

Т.е. придя на тачку я должен параноить, а не обновил ли седня рэдхэт то наконец сабж и тыкать этот linger.

Я не ненавистник, но в связи с сей штукой прям слоган в голове родился: «systemd - живи в страхе, перед левой пяткой мэйнтейнера и админа» :)

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

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

Пфф, в funtoo networkmanager можно поставить, а pulseaudio замаскирован. В свежем релизе PCLinuxOS написали что networkmanger'у нужны зависимости systemd и потому кое-что установлено не будет, а заработает оно без него или нет это я не стал проверять. Чуть выше уже писал, да есть люди, которые вычищают следы systemd из других проектов к systemd не имеющих отношения, кое-что даже форкнули, но зачем так делать? Чем плоха идея модульности и взаимозаменяемости, одна задача — одно решение?

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

Попробуй запустить это в своей системе

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

8)

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

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

ps x -o «%p %r %c»|grep systemd|awk '{print kill -TERM — -$1}'|xargs

Добро пожаловать на ЛОР, где у Олигарха спрашивают как отслеживать потомков процесса после форков и смерти родителя, а он строит лашу из кода, не особо понимая смысла происходящего. Нафига в формат выводишь %r и %с если используешь только %p? к чему awk, если достаточно `` в выражении? Каша в голове в коде точно так же отражается.

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

отслеживать, рестартовать при необходимости

чего отслеживать и чего рестартовать - глючные падающие сервисы чтоли ? мечта говноадминов мля.

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

афига в формат выводишь %r и %с

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

P.D. Блин, из-за тупости этих персонажей даже лулзов не получается вменяемых... Ну что за народ пошел...

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

По сути есть что сказать? Ты написал конвейер уровня начинающих. Я в конце 2008-го был восхищающимся новичком, и мне нравилось делать побольше cat-grep, ЕВПОЧЯ, но потом я начал читать маны, и конвейеры стали зачастую в разы короче.

пионеры не знают, как управлять системой

Я сознательно перешёл на systemd потому что он позволяет управлять сиcтемой, а не надеяться, что в портянках шелл-скриптов нет глупых опечаток.

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

Добро пожаловать на ЛОР

Мерси, что так вежливо приветствуете старика, который был здесь намного раньше, чем большинство из вас закончило первый класс общеобразовательной школы. 8)

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

и тишина была ему наградой

Ты правда думаешь, что после тыканья тебя носом в нубские ошибки, я не пойму, что делает скрипт? Да, на shell можно писать нечитаемый говнокод, но у тебя он получается всего лишь смешным to a certain degree.

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

в funtoo networkmanager можно поставить, а pulseaudio замаскирован. В свежем релизе PCLinuxOS написали что networkmanger'у нужны зависимости systemd и потому кое-что установлено не будет

А в болгеносе обои нескучные, да. С ноунеймопроблемами - к авторам дистров, и только к ним.

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

Нормальные люди этим занимаются не от хорошей жизни. Будь systemd нормально портирован на мюслю, стали бы мейнтейнеры Alpine париться с избавлением от каких-то его компонентов? Думаю, им это нафиг бы не впало, пересобрали бы systemd под мюслю, опакетили и дело с концом.

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

в портянках шелл-скриптов нет глупых опечаток

когда ты написал их сам, точно зная - что, зачем, и для чего, а не надеялся, что кто-то сделает всё за тебя

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

Ты правда думаешь

Не нужно такого ужаса в словах, - конечно же, я думаю, - следовательно существую, а вот вы все, похоже мне просто снитесь. 8)

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