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)

Ответ на: комментарий от Ivan_qrt

)))))

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

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

Не пофиг на время загрузки только тем кто часто её делает. Это явно не сервера.

Совершенно верно, это не сервера.

А на сервера это тогда зачем?

Посыл утверждения, что systemd на сервере не нужен? Или там какой-то другой скрытый смысл?

В дебиан есть kde.

kde на сервере не нужен.

дебиан на сервере не нужен.

Логика воспроизведена 1 в 1.

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

И ещё тем, кто любит детерминированность и пишет нормативы на выполнение типовых операций.

так это для каких-то ушлепков значит, а для нормальных людей зачем это ?

А у вас как?

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

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

Сложно.

Смысл, скорость загрузки для системных администраторов роли не играет, не та фича, на которую молиться надо. unit'ы рисовать, да, удобно, заценил. Логирование - блевать тянет. Косяки эпизодически встречающиеся на стандартных операциях бесят. И пока все держу на centos6, жду, толи допилят, толи ишак сдохнет, толи падишах. )

chemistmail
()
Ответ на: ))))) от chemistmail

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

Делал переразметку raid на своем рабочем пк. Centos 7 x86_64. Рут при этом переносил. Оно, конечно, не удалённое, но обошлось одной перезагрузкой. Я правда /boot и граб не трогал.

В чём у тебя может возникнуть сложность крайне не ясно.

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

«Перед существующими решениями» — это перед какими конкретно?

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

Сложностей нет.

uuid'ы меняются. Это конечно фантастика, но сильно позабавило. )))

Вообще много чего позабавило в последней версии centos и наборе молодежного софта.

chemistmail
()
Ответ на: Красота. ) от chemistmail

И подброшу. Про стильно модно молодежно. Centos7 Задача, есть зеркало, софтварное, root на /dev/md127, нужно перенести на /dev/md1. Установка, загрузчик все штатно, файловая система xfs. Физического доступа нет, только ssh.

Не так давно на своей армовской машинке менял ФС на корне. С ext4 на btrfs. Из спортивного интереса делал целиком по ssh. Всё получилось. Следовательно, руки из жопы растут именно у тебя.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 3)
Ответ на: Сложно. от chemistmail

Смысл, скорость загрузки для системных администраторов роли не играет, не та фича, на которую молиться надо.

А молящихся на скорость загрузки, лично я наблюдаю только среди упоротых sd-хэйтеров, вечно про эту скорость загрузки разглагольствующих. Остальные её упоминают лишь как приятный нюанс.

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

Со скоростью у journalctl есть проблемы. По крайней мере в centos 7. Но один хрен удобнее, чем grep'ать и awk'шить по вороху файлов. Возможно, конечно, у меня мало логов. Но если их сотни гигабайт, то всегда можно всё в syslog пускать, и парить мозг с ним.

Про косяки на стандартных операциях (в Centos 7?) реквестирую подробности.

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

)))

Кукарекай, не напрягает. Либо по делу говори. ))

Спортом не увлекаюсь, у меня это просто работа. Высокооплачиваемая. Без фанатизма. Нужен ключ на 9, беру на 9, нужна ножовка, беру ее.

А ты играйся. ))

chemistmail
()
Ответ на: Сложностей нет. от chemistmail

uuid'ы меняются

Окей, по делу так по делу. Если доступ был только по ssh, а переносил ты рут, то логично предположить, что ты делал это не dd, а tar'ом. Верно?

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

Не вопрос.

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

chemistmail
()
Ответ на: Сложностей нет. от chemistmail

uuid'ы меняются.

uuid'ы поменялись у разделов рэйда (/dev/md?), у фс, у ещё чего-то?

Это конечно фантастика, но сильно позабавило.

Что-то мне в такое слабо верится. Скорее всего вы что-то где-то не доделали или переделали. Uuid'ы прописываются непосредственно на диске, и никем не меняются без явной на то команды.

Вообще много чего позабавило в последней версии centos и наборе молодежного софта.

УМ, как говорится, ВР. Причём уже давно. Хотя у меня в основном виртуалки. Железок на С7 мало.

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

вопрос - зачем?

Ну вот зачем-то bootchart написали. Задолго до systemd, BTW.

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

Не.

Разделы были созданы, файловая система на обоих присутствовала. rsync с корневой на вторую, потом правка grub, конфигов, потом ребут. В процессе загрузки, остановка. md1 не найдены диски по uuid. mdadm -бла > /etc/mdadm.conf, сборка, ручками с консоли перенос, ребут, все в норме.

uuid в процессе загрузки и uuid после загрузки тупо различаются.

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

У меня systemd убивает wpa_supplicant, а потом пытается размонтировать cifs, смонтированную через wi-fi, серя тайм-аутами по полторы минуты. Поттеринг, как он есть.

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

А, ну тогда твой совет со снапшотами вернее. Хотя с другой стороны - что нужно от контейнера? Если только другое сетевое окружение - а корень и изоляцию юзеров не надо, можно через ip netns в другое namespace приложение отправить - я так на работе кручу особохитрый роутинг. Полноценные контейнеры поднимать долго, да и приложения там бывает нужны с хостовой системы.

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

Прод на железе.

Dev и тестинг аналогично на виртуалках. только docker + xfs + кончилось место бьет файловую систему.

Держу одну железку с новинками, как полигон. Пока centos7, docker, xfs и тд в проде места нет.

chemistmail
()
Ответ на: Красота. ) от chemistmail

Вопрос где будет затык? )

Ответ: нигде не будет; собираем новый raid, pvcreate'им на нем lvm pv, vgextend'им на него lvm, pvmove'аем корень на новый pv, редактируем /etc/default/grub в соответствии с тем, что скажет dracut --print-cmdline (не забываем потом grub2-mkconfig'нуть), собираем новый initramfs.

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

Там выше кто-то настойчиво требовал аналог systemd-analyze для ${other_init_name}, но таковой так и не был упомянут.

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

Всё ясно, локалхосты не интересуют, родной. Ты там хоть десяточку ставь, мне всё едино.

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

Репорти баг в дистриб: не прописаны зависимости между юнитами. Systemd тут вообще не при чём.

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

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

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

порядок запуска сервисов не описан так как это не имеет смысла.

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

dinama
()
Ответ на: Не. от chemistmail

md1 не найдены диски по uuid. mdadm -бла > /etc/mdadm.conf

Ну так mdadm -D --scan > /etc/mdadm.conf надо было делать до перезагрузки. А после этого лучше перегенирировать initramfs с использованием хостового mdadm.conf (см. dracut.conf).

Или в параметры ядра передавать сборку всех доступных рэйдов (так не проверял). По дефолту в centos 7 при загрузке собираются только корень и swap. Остальное после initramfs. Соответственно их uuid'ы тоже надо было поправить.

В общем, учитывая то, что тебе помогла генерация /etc/mdadm.conf, косяк исключительно твой. Инфа 146%.

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

локалхосты не интересуют

ты то тут при чем ? может тебя Джастин Бибер интересует - мне все равно, ты же за systemd кукарекал.

anonymous
()

А что так все раскукарекались? Анонимусу например похрену как оно там что грузит. Главное грузит ведь!

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

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

И иногда проще автоматически передёрнуть, собрать всю инфу по падению и отправить админу продолжив работу, вместо того чтобы лежать и ждать спасения.

Так то это фиговая идея (в целом, без оглядки на систему инициализации) (и вообще - какую инфу ты предлагаешь собирать?) - вот упало приложение - может оно сдохло потому что место кончилось, может его по OOM прибили, может внутри какая-то ошибка случилась, может просто коллега зашел и kill'нул этот приклад или какие-то его куски, может быть еще тысяча и одна причина, зачем перезапускать приложение? Чтоб оно опять сдохло? Что толку от отчета админу (который его в лучшем случае через несколько часов прочитает), тем более если информацию он получает только по факту падения сервиса (но слава всем полноценный мониторинг в systemd пока не встроили)? Так то тут «выключить и включить» не всегда помогает (а то и вообще вредит). И если бы все можно было просто рестартить в случае проблем и работать дальше админы бы занимались только настройкой и запуском софтины (а то бы просто компании и свободные разработчики давали готовые бинари-с-конфигами), а потом бы увольнялись - все же и так работает. Так что не надо этот авторестарт выставлять в виде киллерфичи - это может и на локалхосте каком-нибудь сойдет, но вообще это называется костылями.

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

О! Надо запомнить. Замечательное сравнение.

Оно-то замечательное, только надо помнить, что глохнущий мотор тут не системд, а те самые сервисы, которые инвариантны относительно системы инициализации. Ну то есть мотор-то может и говно, но он говном будет и при системд, и без него. И другого не дадут, а ехать надо.

kss ★★★★★
()

Формат unit-файлов изменили? Не вижу в новости ничего про это.

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

Ну то есть мотор-то может и говно, но он говном будет и при системд, и без него.

Только без системд его мало кто будет использовать в таком виде.

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

Ты, наверное, считаешь, что авторестарт там по дефолту и безусловно для всех процессов. Это не так. А ещё там можно указать дополнительные условия, при которых рестарт будет происходить.

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

У меня systemd убивает wpa_supplicant, а потом пытается размонтировать cifs, смонтированную через wi-fi, серя тайм-аутами по полторы минуты. Поттеринг, как он есть.

Говнодистр, как он есть. Как запускается wpa_supplicant?

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

Почему его нет в macosx, а макось грузится за 3-5 секунд?

как говорит легенда, в osx launchd, с которого был слизан systemd. Свечку не держал

arcanis ★★★★
()

На ноуте с SSD и без UEFI.

$ systemd-analyze 
Startup finished in 2.441s (kernel) + 2.411s (userspace) = 4.853s
$ systemd --version
systemd 230
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN

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

Ты указал не генту, а какую-то фунту. Или ты всерьёз считаешь, что каждый форумчанин должен от и до изучить весь список дистровотча? Да, ноунеймы. Deal with it, motherfucker.

Это говорит бывший пользователь малоизвестного alpine, и пользователь нахрен не известного какого-то альтерэгоса, или как там его. Бугага) Фанту известней будет ;)

Deleted
()

Микрософтизация мира GNU/Linux продолжается.

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

Удвою это заявление (хоть тред и не дочитал). Основным недостатком systemd в том, что спроектирован он из предположения, что потребителем всей продукции сервера является кто-то, находящийся в физической близости от механизма. Критики пишуть, что использование systemd возвращает пользователя в мир яблочных и форточных простых задач. Они правы, и тут следует добавить, что началось во времена, когда число понимающих концепцию Xserver уменьшилось до критического. Появились шины в гноме, привязанные к графической сессии, потом однопользовательский вяленый и проч. Мир многообразных сетевых взаимодействий схлопнулся до REST API и доставки контента на однопользовательскую пускалку медиапроигрователя.

Разруха, как писали классики, начинается в головах. Единственный разумный аргумент защитников обсуждаемого поделия, это человеколюбие. И я согласен. Попробуйте описать поведение рабочего стола, да и хотя бы проигрывателя музыки, в ситуации многопользовательской машины, когда один пациент заблокировал свою сессию с музыкой, а другой открыл. А если сессия третьего на Xnest и слушает он в наушники.

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

anonymous
()

Как скоро ее можно ждать в Ubuntu?

weare ★★
()

Systemd уже требует активации по СМС ?

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

Нетъ. Просто 60% юзеров арча используют его для серверных нужд.

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

А это тоже ноунеймы, как и твой воид. У меня, в отличие от некоторых, от этого факта не пригорает.

P.S. Наездами на дистрибутив, в котором уровень красноглазия снижен к абсолютному минимуму, а свежесть софта повышена до максимума, здешний контингент показывает своё желание процесса ради процесса. Задроты-с, сэр.

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