LINUX.ORG.RU

systemd 216

 , ,


1

2

systemd — это менеджер системы и сессий для Linux. systemd совместим со скриптами инициализации SysV и LSB. Он предоставляет возможности агрессивного распараллеливания, использует для запуска сервисов сокеты и D-Bus активацию, позволяет запускать демоны по требованию, реализует транзакционную зависимостную логику управления сервисами, отслеживает процессы с использованием Linux cgroups, поддерживает создание снимков и восстановление, а также заведует монтированием и точками автомонтирования.

Это мажорный выпуск. Помимо прочих изменений, systemd-resolved теперь гармонично дополняет распознаватель заглушек кэширования DNS и LLMNR.

  • timedated больше не читает имена юнитов реализации NTP из /usr/lib/systemd/ntp-units.d/*.list. Альтернативная реализация NTP добавляет
    Conflicts=systemd-timesyncd.service
    в их юнит-файлы, заменяя собой функциональность NTP systemd по умолчанию.
  • systemd-sysusers получила новый тип строки «r» для настройки того, из каких диапазонов UID/GID выделять системных пользователей/группы. Строки типа «u» теперь могут добавлять дополнительную колонку для обозначения домашней директории создаваемого пользователя. Кроме этого, systemd-sysusers теперь может опционально считывать пользовательскую информацию из STDIN вместо файла. Это полезно вызове её из предустановочных скриптлетов RPM, которым нужно создать пользователей перед установкой первого файла RPM, так как этим файлам может требоваться владение этими пользователями. Новый макрос RPM %sysusers_create_inline представлен именно для этой задачи. systemd-sysusers теперь обновляет теневые файлы наряду с базами пользователей/групп, что улучшает совместимость с некоторыми инструментами, например, grpck.
  • Ряд шинных API PID 1 теперь опционально запрашивает у PolicyKit, предоставить ли доступ считающимся непривилегированными клиентам при определённых условиях. Имейте в виду, что интерактивная аутентификация в данный момент пока не поддерживается, но в конечном счёте ожидается добавление и её.
  • /etc/machine-info теперь обладает новыми полями для настройки среды развёртывания машины, а также месторасположения машины. hostnamectl обновлён и снабжён новой командой для обновления этих полей.
  • systemd-timesyncd обновлён до автоматического запроса информации о NTP-сервере у systemd-networkd, который можно обнаружить по DHCP.
  • systemd-resolved теперь включает распознаватель заглушек кэширования DNS и полную реализацию разрешения имён LLMNR. Добавлен новый модуль NSS «nss-resolve», позволяющий использовать собственный «nss-dns» glibc для обнаружения имён хостов через systemd-resolved. Имена хостов, адреса и произвольные RR'ы можно распознавать через D-Bus API systemd-resolved. В отличие от внутреннего распознавателя glibc, systemd-resolved умеет работать с многодомными системами и удерживает DNS-сервера и кэши отдельно и поинтерфейсно. Запросы посылаются одновременно на все интерфейсы, имеющие настроенные DNS-сервера, для корректной обработки VPN и локальных LAN, которые могут распознавать отдельные наборы доменных имён. systemd-resolved может запрашивать информацию о DNS-серверах у systemd-networkd автоматически, который, в свою очередь, может находить её по DHCP. Нововведённый инструмент «systemd-resolve-host» можно использовать для запроса логического DNS у resolved. systemd-resolved реализует IDNA и автоматически использует IDNA или кодировку UTF-8 в зависимости от того, используется ли в качестве транспорта классический DNS или LLMNR. В следующих выпусках планируется добавить в systemd-resolved реализацию DNSSEC и mDNS/DNS-SD.
  • Добавлен новый модуль NSS nss-mymachines, автоматически распознающий имена всех локально зарегистрированных контейнеров по соответствующим IP-адресам.
  • Добавлен новый клиентский инструмент для systemd-networkd — «networkctl». В настоящий момент он полностью пассивен и запрашивает сетевую конфигурацию у udev, rtnetlink и networkd, предоставляя её пользователю дружественным способом. В будущем планируется расширить его до полноценной утилиты для управления networkd.
  • .socket-юниты получили новую настройку DeferAcceptSec=, управляющую sockopt ядра TCP_DEFER_ACCEPT для TCP. Аналогично, для управления TCP Keep-Alive добавлены KeepAliveTimeSec=, KeepAliveIntervalSec= и KeepAliveProbes=. Также поддерживается отключение алгоритма Nagle для TCP (NoDelay=).
  • logind обучен новому типу сессий «web» для использования в проектах наподобие Cockpit, регистрирующих web-клиентов как PAM-сессии.
  • Юниты-таймеры с как минимум одной настройкой OnCalendar= теперь будут запускаться только после достижения timer-sync.target. Таким образом, они не будут проходить перед подстройкой системных часов локальным NTP-клиентом или чем-то подобным. Отчасти это полезно на встраиваемых системах без RTC, запускающимся со сбитыми системными часами.
  • Ключ systemd-nspawn --network-veth= теперь приводит к стабильным MAC-адресам как на внешней, так и на внутренней стороне соединения.
  • systemd-nspawn получил новый ключ --volatile= для запуска экземпляров контейнеров с незаполненными /etc или /var.
  • Клиентский код kdbus обновлён для использования новой подсистемы Linux 3.17 memfd вместо старой, kdbus-специфичной.
  • DHCP-клиент и -сервер systemd-networkd теперь поддерживают FORCENEW. Также есть новые параметры конфигурации для настройки клиентского идентификатора поставщика и режима вещания для DHCP.
  • systemd больше не будет уведомлять ядро о текущем часовом поясе, так как это в любом случае неверно и колоритно, поскольку ядру неведом DST и подобные понятия. Как следствие, временные метки FAT будут всегда считаться UTC, примерно как это уже делает Android. Помимо этого, когда RTC настроены на локальное время (отличное от UTC), systemd никогда не будет синхронизировать их обратно, так как это может смутить Windows при последующей загрузке.
  • systemd-analyze получил новую команду «verify» для оффлайн-валидации юнит-файлов.
  • systemd-networkd получил поддержку парочки дополнительных настроек для слития настроек сети. Также теперь можно настраивать метрику статично настроенных маршрутов. Для сетевых интерфейсов в случае необходимости можно настроить IP-адрес пира.
  • DHCP-сервер systemd-networkd больше не будет запрашивать вещание по умолчанию, так как это роняло некоторые сети. Для оборудования, где вещание необходимо, возможность можно включить обратно с помощью RequestBroadcast=yes.
  • systemd-networkd теперь задаёт адреса IPv4LL (если включено) даже если DHCP успешно настроен.
  • udev теперь по умолчанию отдаёт предпочтение именам сетевых устройств, предоставляемым ядром, если ядро указывает, что они предсказуемы. Это поведение можно изменить изменением NamePolicy= в соответствующем .link-файле.
  • Добавлена новая библиотека systemd-terminal, реализующая полную обработку и отображение TTY-потоков. Эту библиотеку планируется использовать в будущем для реализации подсистемы виртуальных терминалов целиком в пространстве пользователя, взамен текущей реализации в ядре.
  • Добавлен новый инструмент systemd-journald-upload для передачи данных журнала на удалённую систему с запущенным systemd-journal-remote.
  • journald больше не будет передавать все локальные данные другому запущенному syslog-демону. Это изменение сделано, поскольку rsyslog (являющийся на сегодняшний день наиболее широкоиспользуемой реализацией rsyslog) их больше не использует, и вместо этого вытягивает из журнала в свой собственный. Поскольку передача сообщений несуществующему syslog-серверу слишком затратна, было решено просто выключить её. Если у вас запущен syslog-сервер, отличный от последней версии rsyslog, эту опцию нужно снова включить (ForwardToSyslog= в journald.conf).
  • journald опционально поддерживает LZ4-компрессор для больших полей журнала. Этот компрессор работает намного лучше XZ, который использовался по умолчанию ранее.
  • machinectl теперь показывает IP-адреса локальных контейнеров, если знает их, плюс имя интерфейса контейнера.
  • Добавлен новый инструмент «systemd-escape», позволяющий легко экранировать строки для создания имён юнитов и т. п.
  • Сообщения sd_notify() теперь могут содержать новое поле ERRNO=, которое обрабатывается и сохраняется systemd, чтобы потом его можно было отобразить в выводе «systemctl status» для сервиса.
  • Добавлен новый компонент «systemd-firstboot», интерактивно запрашивающий для systemd наиболее базовую информацию (часовой пояс, имя хоста, пароль root) при первой загрузке. Ещё его можно использовать для предоставления этих вещей оффлайн в образах ФС, установленных в директории.
  • Сниппеты sysctl.d/ по умолчанию теперь выставляют net.ipv4.conf.default.promote_secondaries=1. Это позволяет не сбрасывать вторичные IP-адреса, когда первичные удалены.

>>> Источник

★☆

Проверено: fallout4all ()
Последнее исправление: JB (всего исправлений: 4)

[troll mode=«newmode»]
Дабы вбросить новую струю
«EMoney-generate-systemd» с поддержкой всех emoney - ещё не написали?
[/troll]
Что следующее на очереди? Ну, чисто из любительского интереса.

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

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

Dmitry_Sokolowsky ★★★★★
()

ждём ебилдов

anonymous
()

Добавлена новая библиотека systemd-terminal ... реализации подсистемы виртуальных терминалов целиком в пространстве пользователя

НАФЕЙХОА?!! Зачем оно нужно, изменения ради изменений? TTY - одна из самых стабильных частей ядра, они теперь и это хотят сломать. Догадываюсь, что они хотят вынести TTY в юзерспейс, чтобы потом навставлять туда свистелок, но зачем конченному юзеру голая консоль со свистелками? Кто ей пользуется свистелки не нужны.

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

Видимо, Лёня с тобой категорически не согласен и очень хочет розовый терминал со стразиками, поняшами и анимацией

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

АФЕЙХОА?!! Зачем оно нужно, изменения ради изменений? TTY - одна из самых стабильных частей ядра, они теперь и это хотят сломать.

Это похоронит остальные системы инициализации. Конкурентов надо давить любой ценой. Сначала затащили туда udev, теперь ещё и TTY будет там. Чтобы что-то противопоставить, придётся писать аналог systemd, а не систему инициализации.

anonymous
()

Выкинуть новость в помойку....

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

Я читаю. Следующий!

systemd-timesyncd обновлён до автоматического запроса информации о NTP-сервере у systemd-networkd, который можно обнаружить по DHCP.

Я надеюсь, это «умное» поведение можно отключить? Мне совсем не интересно, какой NTP сервер указывает провайдер, у меня есть свои варианты.

Deleted
()

вангую видеоплеер

anonymous
()

Отличная новость, и список изменений внушительный.

slyjoeh ★★★
()

К сожалению, линия невозврата уже перейдена. Система инициализации, «инструментарий для управления демонами» - были всего лишь промежуточными проектами, скорее, для предварительной обкатки и отвода глаз федороидов. Теперь идет переделка [идеи] всей системы.

И, да, ждем systemd-licensed.

anonymous
()

systemd больше не будет уведомлять ядро о текущем часовом поясе, так как это в любом случае неверно и колоритно, поскольку ядру неведом DST и подобные понятия.

это в любом случае неверно и колоритно

колоритно

anonymous
()

Куда они так торопятся с номерами версий? Стремятся обогнать по версиям драйверы NVidia или у какого еще проекта версии измеряются в сотнях?

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

Вот чем оно лучше openrc?

Наличием разработчиков, хотя бы.

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

man kmscon

man fbcon

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

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

Поттерингу докажи для начала.

Он конечного пользователя на МПХ вертел. Как нужно компании, чтобы доить корпоративных клиентов, так и будет. А на десктоп им насрать. Ты же не заплатишь 99$ за тех. поддержку?

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

В systemd многое, почти всё, вызывает эмоции «wtf am i reading?»

теперь гармонично дополняет распознаватель заглушек кэширования DNS и LLMNR

Krieger_Od ★★
()

пусть уже Лёня запилит свой systemd/Linux, или, что еще лучше systemd/systemd

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

Конкурентов, ага. Будто кто-то что-то за этот системд получает. Кроме Поттеринга - ну так он получать будет в любом случае.

ArtKun ★★★★★
()

Когда же уже код этой поделки от нововведений затрещит по швам и расползется? :)

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

anonymous
()

Все. Досижываю на Дебиане... Как только будет окончательный перелаз на сыстемДэ - перехожу на FreeBSD. Это закат мира GNU/Linux, как ни прискорбно осознавать.

P.S. Пора откапывать UNIXWare. Да. Как 10 лет назад.

anonymous
()

Трэш, угар и садомия... Слава Богу, я у себя udev выпилил и перешел на православный eudev, теперь эта мерзость у меня и по зависимостям ни где светится :)

cheez ★★★
()

Это мажорный выпуск.

мажоры выстроились в очередь на получение, ага

Deleted
()

супер. успехов ленарту, хорошее дело делает!

garik_keghen ★★★★★
()

logind обучен

Воу, вы с этим поосторожней, в какой-то момент все systemd-*d обретят интеллект, соберутся вместе и захватят своего создателя в плен.

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

systemd-matrixd

а также systemd-redpilld и systemd-bluepilld в зависимостях.

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

Slackware - оплот и наше всё! :)

а вообще -да...поганят линукс как тока могут. скоро такими темпами хуже майкрософтовских поделок сделают...

wisedraco ★★
()

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

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

соберутся вместе и захватят своего создателя в плен.

а ты типо собрался в сторонке остаться

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

Ну тогда кушай кактус, если у тебя вдруг что-то отвалится, то тебе не помогут. И багрепорт, кстати, тоже не примут.

В этом и состоит их расчет.

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