LINUX.ORG.RU

Выпуск systemd 213

 ,


0

4

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

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

  • Новый демон «systemd-timesyncd» для синхронизации времени по сети. С целью упрощения реализованы лишь возможности SNTP-клиента, код не перегружен излишней серверной функциональностью. Демон запускается с минимумом привилегий и умеет взаимодействовать с networkd, чтобы работать только при наличии подключения к сети. Кроме того, он умеет периодически сохранять текущее время на жестком диске и при следующей загрузке сразу восстанавливает его, не дожидаясь начала очередной синхронизации. Это полезно для устройств, в которых отсутствуют часы реального времени (Raspberry Pi, встраиваемые устройства). Восстановленное при загрузке время будет не самым точным, но это лучше, чем ничего. При этом, требуется создание в системе отдельного пользователя и группы «systemd-timesync».
  • Отключена поддержка «seqnum» в libudev, поскольку, если устройства находятся в различных пространствах имён, их номера не будут последовательны.
  • Для «systemctl list-timers» и «systemctl list-sockets» добавлен ключ --recursive, отображающий юниты указанного типа для всех локальных контейнеров.
  • Служебные юниты получили новую директиву RebootArgument=, с помощью которой можно передать ядру аргументы для следующей перезагрузки, если перезагрузка осуществляется через использование StartLimitAction=.
  • Кроме того, этим же юнитам добавлена директива FailureAction=, через которую можно указать, какие операции будут выполнены в случае сбоя сервиса. Все это работает аналогично директиве StartLimitAction=, но в данном случае, указанные операции будут выполнены немедленно после первого же сбоя, а не после нескольких попыток перезапуска проблемного сервиса.
  • Утилита hostnamed теперь может работать с информацией об имени ядра, релизе и версии.
  • На графики, создаваемые утилитой bootchart, добавлены сведения cgroup.
  • Сервисы получили поддержку опции CPUQuota=, с помощью которой можно жестко ограничить в процентах потребление сервисом процессорного времени. Это значение не будет превышено, даже если процессор простаивает.
  • systemd-networkd обучен поддержке IPIP и SIT-туннелей.
  • Скриптам инициализации LSB добавлена зависимость от network-online.target, вместо network.target. За счёт этого, их поведение становится более похожим на то, каким оно было в SysV.
  • Добавлена поддержка опции ядра fsck.repair=, которая определяет, что fsck сделает при загрузке с некорректно отмонтированными файловыми системами.
  • Парсер конфигов (.ini) теперь игнорирует разделы, имена которых начинаются с «X-». Это открывает дорогу к созданию в конфигах специфичных разделов для нужд других приложений.
  • machined получил новый API для запроса IP-адресов зарегистрированных контейнеров.
  • Добавлен новый вызов call sd_uid_get_display(), позволяющий запросить информацию об основной сессии пользователя. Основная сессия выбирается из числа всех сессий. Например, графическая сессия будет предпочтена текстовой.
  • У systemd-networkd появился компаньон — крохотный демон systemd-resolved, который вносит изменения в resolv.conf, основываясь на конфигурации DNS для сетевых интерфейсов. В будущем, сюда добавят локальный кэш DNS и mDNS с поддержкой DNSSEC.
  • Включена по умолчанию утилита systemd-networkd-wait-online, которая вносит задержку в network-online.target до того момента, пока не будет настроено подключение к сети.
  • Две новых опции: StartupCPUShares= и StartupBlockIOWeight=. Они работают аналогично CPUShares= и BlockIOWeight=, но только при загрузке системы.
  • hostnamed теперь предпочитает брать имя хоста из /etc/hostname, если оно там указано, а не через DHCP. В systemd, параметры, определённые локальным администратором, традиционно имеют больший приоритет, чем любые другие.

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

anonymous

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

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

Это проблемы дебианщиков

На диету, жиртрест.

Люди здесь причём?

При том, что сетевые шары надо монтировать только после поднятия сети.

redgremlin ★★★★★
()

Ого! Не думал, что объемы дерьма будут увеличиваться НАСТОЛЬКО

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

Знаешь в чём разница между FreeBSD и Лёней? FreeBSD не диктует всем, «как жить правильно». У них там своя песочница и в другую они не лезут учить кулачи печь, а неугодные ломать.

И тоже с KDE vs Gnome и другие твои примеры.

результат будет «родной» для systemd

Родной, говоришь ... Ну форкните уже пожалуйста GNU/Linux, выкиньте весь GNU из него и запилите уже свой Lennart/Linux. Зачем вы мне debian ломаете?

Хотя к кому тут претензии? Дебианьщики сами, как щенки, без своего мнения ... на поводу ходят.

Хотя на самом деле проблема гораздо глубже. Взять тот же ntpdate. 'Deperecated' говоришь. Почему? Потому что никто не поддерживает. Почему? Потому что все ломанулись новую цацку systemd-timesyncd облызгивать.

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

А я вот эти ваши линуксы с '96 года наблюдаю. И знаешь что? И твоя цацка станет 'deprecated', как и многие до неё. Потеряет Лёня интерес. (А ведь это когда-то случится.) И всё, пишите новый.

И ничему вы не учитесь. Когда вы уже поймёте, NIH'ить с умом надо. А не вот так вот. «Взять всё и переписать!»

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

При том, что сетевые шары надо монтировать только после поднятия сети.

И? mount -a -t "no${NETFS//,/,no}" -O no_netdev

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

Разрежут на systemd-* и запихнут, чем не вариант?

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

Дебианьщики сами, как щенки, без своего мнения ... на поводу ходят.

А давай мы без доброжелателей-бздунов, которые спят и видят, как бы занять место линукса, обойдёмся?

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

А зачем нам (я вообще-то опенбсдешник и к фре никакого отношения не имнею, но всё же) ваше место? У нас своё есть. И нам там очень уютно.

Зачем вообще вся эта поляризация и зависть? Я работаю и с тем и с другим. Но тенденции в мире линукс меня к сожалению всё больше расстраивают. Указание на них уже табу?

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

И ничему вы не учитесь.

У кого учится? У бздунов, которых на земле осталось меньше чем уссурийских тигров? Великие учителя.

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

Поясни, дураку. Что там такого, что надо обязательно переписывать? (но хуже)

NTP это не столько протокол синхронизации времени, сколько протокол синхронизации двух генераторов через интернет. Вообще, наличие стабильных генераторов в железе, это относительно недавнее достижение. Древние машины вообще брали от электросети (с офигенной точностью).

Хотя, я вот например, сталкивался с ситуацией когда системный таймер (не путать с RTC) умудрялся за время инициализации ntpd убегать из NTP treshold, и его пришлось сначала откалибровать, поскольку видимо даже скрипты hwclock таких погрешностей боялись.

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

Задача SNTP же, главным образом состоит в «сделать так чтобы Керберос не ругался». Велосипед же поттеринга выполняет задачу «получить хоть что-нибудь, откуда нибудь без серьезных последствий для процесса загрузки».

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

И этот туда же! Ну от куда это монополярное мышление берётся?

Учитесь сами у себя. (Если у других гордыня не позволяет.) Учитесь не переизобретать колесо каждый раз заново, а эволюционировать и развивать уже готовые инструменты.

Неужто мне тут надо повторять эти простые истины?

Или тебе всё же более интересно обсудить мою личность?

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

Проблема в том, что сами создатели сустемдэ не знают, что они туда включат. Разработка ключевых компонентов системы в стиле студенческих лабораторных по информатике — отличительная черта употтеринга.

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

О!

Не знаком с тонкостями NTP, но разве нельзя первый запрос серверу сделать «сколько время?», а потом уже начать более точную синхронизацию? Ведь в этом случае пофиг, какое системное время, оно после первого же ответа перепишется.

Пересекающиеся логи? Это круто!

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

Вообще-то работа ведеться

Методом необходимости. Решается проблема. Если существующие решения неустраивают. Ищут выход.

А в сущуствующих решений огромное количество кривых мест.

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

Знаешь в чём разница между FreeBSD и Лёней?

В масштабах. Лёня пытается контролировать значительно меньшую часть системы.

FreeBSD не диктует всем, «как жить правильно»

Злостное 4.2. Пользователь никак не может влиять на System Core.

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

Pulseaudio ни строчки не затронуло в alsa, systemd ни строчки не поменяло в /bin/init.

Родной, говоришь ... Ну форкните уже пожалуйста GNU/Linux, выкиньте весь GNU из него и запилите уже свой Lennart/Linux.

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

Взять тот же ntpdate. 'Deperecated' говоришь. Почему? Потому что никто не поддерживает. Почему? Потому что все ломанулись новую цацку systemd-timesyncd облызгивать.

Шиза продолжала расти. Deprecated он много лет как. И не потому что появилось что-то новое, а потому что изначально поведение неправильное и появилось как паллиатив, «за неимением гербовой пишем на простой».

Ты вот за этот новодел горой

Я идейный противник SysVinit с самого начала использования линукса, вот уже 16 лет как. Я сторонник идеи LSB с самого начала его существования, хотя и должен признать, что сам проект LSB провалился. Может systemd и не лучшее воплощение, но он хотя бы всколыхнул это болото и направил линукс в правильном направлений - единого центрального системного ядра с вменяемой системой инициализации.

redgremlin ★★★★★
()
Ответ на: Вообще-то работа ведеться от anonymous

Не устраивают чем? Тем, что их сделал не «леня»? Что мешает писать патчи для кривых мест в существующих решениях, вместо того, чтобы городить собственное N+1 решение с собственными неповторимыми кривыми местами? Невозможность организовать vendor lock-in для шапки?

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

Мне начинает казаться что они хотят переизобрести базовую систему. И я даже не уверен что это сильно плохо, т.к. позволит избавится от архитектурных костылей тянущихся из 70х годов. Правда хорошие решения из 70х годов тоже скорее всего потеряются. Хорошо это или плохо думаю увидим через 3-4 года. Всегда можно на фрю свалить будет.

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

периодически сохранять текущее время на жестком диске

А где astrald, чтобы узнавать время, на которое выключалось устройство?

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

«мягко» сказано. Точность примерно +/- бесконечность

Для перезагрузок отличная штука. Для некоторых программ, использующих шифрование, не обязательно точное время, лишь бы сертификаты не просрочились — тоже немного поможет. Логи не будут начинаться с 1970 года — проще разобраться.
Лучше пусть так, чем вообще никак.

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

Вот не надо так жёстко и по-чёрному передёргивать.

Там полноценная реализация ntp-протокола, включая серверную часть. Или ты предпочитаешь ftp-клиенты с поддержкой режима ftp-сервера?

Да, я предпочитаю торрент-клиенты, которые не только скачивают, но и отдают. А Поттеринг - нет.

Торренты тут более лучшая аналогия к ntp, чем ftp.

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

Если это будет базовый функционал безо всяких AD и контролёров домена, то только в путь, smbd уже до 10метрового бинарника разрослась, а сложнее расшаривания каталога на виндовую машину у меня последние лет 6 не использовалась.

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

В OpenWRT весь не нужный функционал самбы выпилен, например. Популярный, поддерживаемый патчсет. Абсолютно Free и всё такое. Но что-то мне подсказывает, что его не будет в RH.

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

он хотя бы всколыхнул это болото и направил линукс в правильном направлений - единого центрального системного ядра

Ein Volk, Ein Reich, Ein Führer!

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

серьезные серверные решения за тонны нефти

-А-ха-ха-ха!

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

redgremlin> Вообще, чем дальше, тем больше systemd напоминает мини-BSD

В смысле, его ждёт могила?

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

anonymous> Я всегда думал, что Леннарт пишет не комбайн, а набор core system utils.

Если бы он пилил альтернативные core system utils, то они могли бы работать отдельно и независимо. Но это не так - всё работает исключительно в рамках PID 1.

Quasar ★★★★★
()

новую директиву RebootArgument=, через которую можно указать, какие операции будут выполнены в случае сбоя сервиса. Все это работает аналогично директиве StartLimitAction=

добавлена директива FailureAction=,

Две новых опции: StartupCPUShares= и StartupBlockIOWeight=. Они работают аналогично CPUShares= и BlockIOWeight=

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

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

UNIX мёртв. Забудь о нём. SystemD же плох вовсе не из-за того, что он не UNIX, а из-за того, что его разработчики кладут большой болт на грамотное проектирование и проработку архитектуры. В итоге появился уродец, которые defective by design и сам по себе является костылём.

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

redgremlin> Простое должно быть простым, сложное должно быть возможным.

Это «простое» в итоге оказывается сложным в обязательном порядке, так как без своей сложнейшей основы работать просто неспособно. А ведь могло бы, если бы не идиоты это делали.

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

Linux не будет качественной системой, пока ядро пишут бесплатные программисты, над которыми нет контроля, а значит все — они индусы-недоучки или (в лучшем случае) педофилы.

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

Единое центральное системное ядро уже давно было в виде стандартов. Вменяемые системы инициализации тоже были. И супервизоры сервисов тоже были. И никуда они не делись. Так зачем нам systemd?

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

И твоя цацка станет 'deprecated', как и многие до неё.

systemd2 =/= systemd 2.0
а потом скажем, что systemd broken by design и перепишем с нуля.

// Даю systemd лет 5, не больше.

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

Голословное утверждение. Я пилил только OOM-killer, меня поразила разница в ядре linux и FreeBSD. Код линукса очень модульный, легко правится. BSD - куча legacy кода из 80-х.

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

Wayland должен быть в ядре!

Фи, ретроград!
Прошьём его прямо в микрокод процессора и будем напрямую грузить systemd вместо bios.

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

ОТЛИЧНЫЙ план! systemd должен грузится из uefi, грузится systemd-microkernelz, он инициализирует железо, и грузит поверх себя linux!!!
Лучшая система.

Shadow ★★★★★
()

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

Версия слогана «Тындекс@» для Syztemd:

«Велосипедится все... со временем...»

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

грузится systemd-microkernelz

systemd-microkernelz_stripped_minimal.xz (150MB)

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

Никогда не пользовал

самая распространенная проблема systemd-хэйтеров.

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

PID 1

Извини, что? В /usr/lib/systemd лежит 38 бинарников, по одному на каждую «неосновную» задачу, и ни один из них не работает в PID 1 и вообще никак с ним не связан (за исключением того, что линкуется с libsystemd ради code reuse).

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