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)

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

А почему разработчик должен думать о юзерах?

Потому что, ВНЕЗАПНО, разработчики для юзеров, а не юзеры для разработчиков. Софт, которым никто не пользуется — бесполезный набор байт.

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

Что мешает вызвать make? Это же не хромиум какой-нибудь или ядро, у которых сырцы весят полгига и даже на мощнейшем железе собираются полдня. Вон у dwm вся конфигурация в исходниках задаётся.

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

никакой инфы какая версия пакета будет устанавливатся

Ключ -V.

MiniRoboDancer ★☆
() автор топика
Ответ на: комментарий от AlexM

И, внезапно оказывается, что стэйбл - не такой уж и стэйбл.

А как ты представляешь стабильную систему с нестабильным ПО?

MiniRoboDancer ★☆
() автор топика
Ответ на: комментарий от eugeno

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

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

Потому что, ВНЕЗАПНО, разработчики для юзеров, а не юзеры для разработчиков. Софт, которым никто не пользуется — бесполезный набор байт.

Настолько же ВНЕЗАПНО - софт, которым никто не пользуется, умрет очень быстро и на него не будет переходить весь мейнстрим.

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

Софт, которым никто не пользуется — бесполезный набор байт

В точку! Именно поэтому опенрц и прочие недоделки это удел поражённых баттхёртом, а systemd есть во всех заслуживающих внимания дистрибутивах.

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

Не к systemd, а к его апи. Никто не мешает сделать аналог.

Ну да, отреверсить API и сделать аналог. А потом поцеринг изменит API.

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

Нельзя ставить в одном предложении.

Точно, я же идиотов забыл спросить! У разработчиков systemd та же проблема :)

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

То, что ломаем работающую годами систему

А зачем ты ломаешь работающую систему? Ты что - дебил?

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

Потому что, ВНЕЗАПНО, разработчики для юзеров, а не юзеры для разработчиков.

Не совсем так. Разработчики для ПО, а ПО для юзеров. Кто платит за ПО, тот и заказывает музыку. В данном случае платит красношапка.

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

Ну да. Все лишнее вместе с системд отомрет однажды. Сразу :) РакЛеннарт он такой... Напористый.

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

Привязка компонентов накрепко к systemd - это по-твоему что?

Классический пример повторного использования кода. Идеальное решение.

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

А потом поцеринг изменит API.

Все проходит. Пройдет и поцеринг.

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

Например, как Марабейка в Россию выбиралась.

Ты наркоман что-ли?

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

А на юзеров как обычно кладётся прибор

Юзеры в восторге от systemd - потому-то все основные дистрибутивы на него и переходят. А ты не юзер, ты моль у которой шубу отобрали :)

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

Ну, с обновлением xen 4.1 сломался проброс видеокарточек в гостевую систему. Исправили в версии 4.3 в анстейбле. Естественно, бэкпортировать в стабильную ветку исправление не стали.

Ссылка на багрепорт?

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

Попытка установить из бэкпортов qemu(или libvirt-bin) приводит к удалению гнома. Метапакета, конечно, но apt-get autoremove вынесет почти всю систему.

sudo apt-get install qemu -t wheezy-backports
[sudo] password for eugeno: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  ipxe-qemu libaio1 libfdt1 libiscsi2 libspice-server1 libusb-1.0-0
  libusbredirparser1 libvdeplug2 libxen-4.1 libxenstore3.0 openbios-ppc
  openbios-sparc openhackware qemu-slof qemu-system qemu-system-arm
  qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc
  qemu-system-sparc qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils
  seabios sharutils
Suggested packages:
  qemu-user-static samba vde2 sgabios ovmf debootstrap
The following NEW packages will be installed:
  ipxe-qemu libaio1 libfdt1 libiscsi2 libspice-server1 libusbredirparser1
  libvdeplug2 libxen-4.1 libxenstore3.0 openbios-ppc openbios-sparc
  openhackware qemu qemu-slof qemu-system qemu-system-arm qemu-system-common
  qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-sparc
  qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils seabios sharutils
The following packages will be upgraded:
  libusb-1.0-0
1 upgraded, 27 newly installed, 0 to remove and 128 not upgraded.
Need to get 65.2 MB of archives.
After this operation, 188 MB of additional disk space will be used.

Дальше будешь сочинять?

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

отреверсить API и сделать аналог

А вот и наша брехливая истеричка отметилась. Api stability chart сама нагуглишь или сразу нахер пойдёшь?

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

а можно новости о обители зла и бурлящем говне не пропускать?

А ты что, уже и в новости пролезть умудрился?!

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

В крысе раннер фокус теряет

Пруф?

в щели память течёт

Не течёт, у меня gnome-shell даже спустя целый день работы занимает не больше 150 Мб, а чаще чуть больше 100 Мб.

в кедах плазма падает

И снова повторю запрос о пруфе.

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

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

MiniRoboDancer ★☆
() автор топика
Ответ на: комментарий от eugeno

Значит libvirt-bin или virt-manager. Конкретно глюк связан с одним из пакетов avahi-*, который в результате и выносит gnome.

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

О, похоже, 16 августа они всё-таки озаботились исправлением в стабильной ветке. Офигеть, с 1-го мая глюк висел.

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

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

Тем более. Думаешь админам проще иметь дело с допотопными скриптами, чем с systemd?

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

брехливая истеричка отметилась. Api stability chart сама нагуглишь

«Если бы ты был девушкой, ты бы был постоянно беременным» (ц). А может, ты и есть беременная девушка? Это многое объяснило бы.

сразу нахер пойдёшь?

Кстати, давно хотел тебе сказать... ПНХ, шавка.

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

Это не то, это вообще 2013 год. Просто поиск в гугле по «systemd-terminal» ничего этого ченджлога не находит. А где сама библиотека-то?

anonymous
()

Чем дальше лес, тем больше дров:)

у меня стоит 213 версия и обновляться не планирую. А системд сам себя загонит в тупик. Рано или поздно.

vitalikp
()

сколько же батхерта доставляет связка systemd logind

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

Настолько же ВНЕЗАПНО - софт, которым никто не пользуется, умрет очень быстро и на него не будет переходить весь мейнстрим.

А systemd тоже никто не стал бы просто так использовать. Зачем? Ну подумаешь, еще один инит.

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

А релиз upstart вынесли в мини-новость

Из убунты его тоже скоро вынесут ;-)

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

А systemd тоже никто не стал бы просто так использовать

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

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

Пруф?

Улетел вместе со штейблом и старой крысой.

не больше 150 Мб

i686, шоле? Алсо, он мог и в своп уйти, где выхлоп /proc/$PID/status. И день аптайма при рабочем саспенде — это очень мало.

И снова повторю запрос о пруфе

Например. Про падения не нашёл, в гугле забанили; встречал сообщения о падениях вплоть до 4.4, которая была в сквизе.

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

А systemd тоже никто не стал бы просто так использовать

Т.е. его используют не за просто так? Хорошая новость, куда подходить свою долю забирать?

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