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)

Чёрт подери, ребята, чего оно так долго загружается? Я тут неделю решил рачиком побаловаться, а там это, жутко не понравилось, вернулся на генту/openrc. Хоть openrc более медленно выключает (сабж буквально секунду), но скорость загрузки — небо и земля.

kep
()

Спасибо за новость. Вот этот пункт

В systemd-logind по умолчанию после выхода пользователя обеспечено принудительное завершение процессов, запущенных в составе пользовательского сеанса. Управлять принудительным завершением можно через опцию «KillUserProcesses=» в logind.conf, которая теперь выставлена в значение «yes» по умолчанию, что требует отдельных настроек, если необходимо сохранить работу длительно выполняемых пользовательских процессов (для работы screen и tmux требуется специальная настройка сервисов, например, включение «lingering» через loginctl). Для восстановления старого поведения на этапе сборки можно указать опцию "--without-kill-user-processes".

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

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

Чёрт подери, ребята, чего оно так долго загружается? Я тут неделю решил рачиком побаловаться, а там это, жутко не понравилось, вернулся на генту/openrc. Хоть openrc более медленно выключает (сабж буквально секунду), но скорость загрузки — небо и земля.

Мне не нравится systemd, но загружает систему он быстро. У меня за 6 секунд грузится. Не знаю, быстрее ли openrc, но даже если и быстрее, то неужели это действительно может напрягать? У меня от кнопки включения до GRUB и то дольше наверное.

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

рачиком побаловаться

Насколько мне известно, эта версия systemd (230), пока еще в тестиге...Зачем ты тестинг подключал, а теперь ноешь?

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

я ничего не подключал, даже не в курсе как это делать, я говорил про ту версию systemd, которая устанавливается при:

~# pacstrap /mnt base

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

я говорил про ту версию systemd

Ясно, я подумал что ты жалуешься на 230. С 229 у меня тоже проблемы, например вот этот баг.

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

чего оно так долго загружается?

loader:     12ms
kernel:     939ms
userspace:  368ms
  • loader — UEFI, никаких прослоек;
  • kernel собран максимально модулями, но далеко не всё, можно ещё триста миллисекунд выиграть, но мне лень;
  • userspace составляет одиннадцать юнитов, плюс автогенерируемые для девайсов и прочего; с сессией иксов, средствами костылей и велосипедов, стартуют юниты, запускающие почтоклиент, настраивающие окружение и прочее, на этап загрузки это пропихивать не нужно — оно без иксов не актуально, и только цифры портит;
  • Общее время загрузки — 1.320s;

Ты явно что-то делаешь не так.

r3lgar ★★★★★
()

Добавлена поддержка унифицированной иерархии cgroup (в ядре с 4.5), для задействования которой в systemd при загрузке требуется указать опцию командной строки ядра systemd.unified_cgroup_hierarchy=1. Для унифицированной иерархии также добавлен контроллер cgroup io, который дополнил контроллеры memory и pids.

В systemd-logind по умолчанию обеспечено принудительное завершение процессов, запущенных в составе пользовательского сеанса, после выхода пользователя из системы. Управлять принудительным завершением можно через опцию KillUserProcesses= в logind.conf, которая теперь выставлена в значение yes по умолчанию, что требует отдельных настроек, если необходимо сохранить работу длительно выполняемых пользовательских процессов (для работы screen и tmux требуется специальная настройка сервисов, например, включение т.н. lingering через loginctl). Для восстановления старого поведения на этапе сборки можно указать опцию --without-kill-user-processes.

Нужнота!

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

Startup finished in 2.443s (kernel) + 8.504s (userspace) = 10.947s

правда это 229

anonymous
()

Зашёл в тред посмотреть, что новенького в сабже. Пульт управления радиоуправляемыми машинками? Приготовление тостов и кофе?

В machinectl clean добавлена возможность автоматического удаления всех или только скрытых образов контейнеров.

systemd уже и менеджер контейнеров?

Чёрт подери, ребята, чего оно так долго загружается?

Серьёзно? Можно с цифрами? Ведь быстрая загрузка служб была самым ранним selling point сабжа.

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

В смысле, nohup, screen, tmux теперь на помойку, или нужно дёргать админа сервера (если не дай Патрег ты на сервере не рут) чтобы отключить дефолтное поведение? O brave new world. Как это типично для сабжа. Не дожить Поттерингу до пенсии, чует моё сердце.

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

Вы меня опередили. Хочется надеяться, что так оно и есть.

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

Тут уже сообщали о нужности этого перделия?

Это понятно и без слов.

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

не знаю, сабж в этом винить, или другую компоненту, но новая убунта с sd 229 в сон уходит значительно дольше

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

Ответил кэпу, тебе тоже будет полезно почитать... См. выше.

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

Если Вам и правда интересно (как было интересно мне в своё время), то нужную информацию легко нагуглить забив «why systemd (тут гугл попробует угадать что вам надо и сам подставит) is bad», но на всякий случай (если Вам лень) вот первая ссылка из гугла. А вот тут не поленились и запилили целый сайт.

flyshoot
()

У кого дольше?

Startup finished in 17.226s (firmware) + 3.831s (loader) + 6.845s (kernel) + 12.070s (userspace) = 39.973s
По ощущениям пару секунд. И еще быстрее чем было с upstart.
//systemd 229

anonymous_sama ★★★★★
()
Startup finished in 4.926s (kernel) + 25.017s (userspace) = 29.944s

Debian 8, systemd 215

Sunderland93 ★★★★★
()

ой, девочки, я тут такое слышала!

$ systemd-analyze
Startup finished in 2.177s (kernel) + 32.275s (userspace) = 34.452s

жду браузер

reprimand ★★★★★
()

Что-то я не понял на каких самоварах работают отписавшиеся выше про время загрузки

$ systemd-analyze 
Startup finished in 1.385s (kernel) + 3.623s (userspace) = 5.009s
$ systemd --version
systemd 229
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN
alozovskoy ★★★★★
()
Ответ на: комментарий от Andrey_Utkin

systemd уже и менеджер контейнеров?

Давно уже.

templarrr ★★★★★
()
Ответ на: комментарий от alozovskoy
~>  systemd-analyze 
Startup finished in 11.418s (kernel) + 30.923s (userspace) = 42.341s
~>  systemd --version
systemd 229
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN
anonymous
()
Ответ на: комментарий от alozovskoy

я не понял на каких самоварах работают отписавшиеся выше

Прекратите уже хвастаться своим SSD, мы поняли.

anonymous
()

[ 26.552713] nvidia-modeset: Allocated GPU:0 (GPU-0c17614b-2495-ac04-e02b-b807303a1888) @ PCI:0000:01:00.0

init 2.88, Linux VolkPC 4.4.0-0.bpo.1-amd64 #1 SMP Debian 4.4.6-1~bpo8+1 (2016-03-20) x86_64 GNU/Linux

Если кто не понял, мой init на древнем, умирающем HDD полностью загружается за 26 секунд. Попрошу заметить, это без systemd и без OpenRC.

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

Арч уже удален, ты отвечаешь на коммент, в котором содержится следующая информация:

вернулся на генту/openrc

kep
()

Лучшая система инициализации! Upstart не нужен!

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

Я не знаю что за числа показывает systemd-analyze, но на debian 8 у многих сеть стартует долго, по минуте а то и дольше, с полгода назад даже тема где-то тут была. Где специалисты по systemd заключили что это дебианопроблемы, ибо УМВР.

flyshoot
()
Ответ на: комментарий от anonymous_sama
Startup finished in 7.138s (firmware) + 5.915s (loader) + 1.316s (kernel) + 4.956s (initrd) + 55.677s (userspace) = 1min 15.005s

systemd 222

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

Их «самовары» не используют/не умеют uefi. Либо systemd-analyze не всегда может определять firmware/loader в некоторых ситуациях, даже если система загружена в uefi режиме.

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

Потому что есть openrc и upstart.

upstart

Его закопали даже создатели. Интересно почему?

А ещё есть незаслуженно забытый initng.

Уверен, что незаслуженно?

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

systemd уже и менеджер контейнеров?

Да, при чём отличный. Не поганит сеть и работу с диском как всякие хипстоподелия типа Докера и при этом существует, в отличие от lxc.

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

Нет, админа сервера дёргать не нужно: loginctl enable-linger.

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