LINUX.ORG.RU

Systemd 235

 , ,


0

1

После трех месяцев разработки вышел релиз Systemd 235. Основные изменения:

  • Поддержка automake прекращена. В качестве сборщика используется Meson, использующий инструментарий ninja.
  • Для unit-файлов представлены опции RuntimeDirectory и RuntimeDirectoryPreserve, позволяющие определить путь к runtime-каталогу (в иерархии /run или $XDG_RUNTIME_DIR) и поведение в отношении сохранения его содержимого после остановки unit-а. Например, указание RuntimeDirectory=foobar приведёт к размещению данных в каталоге /run/foobar и удалению после завершения работы сервиса, если для него не установлена опция RuntimeDirectoryPreserve;
  • По аналогии с RuntimeDirectory для unit-ов представлены опции StateDirectory, CacheDirectory, LogsDirectory и ConfigurationDirectory, позволяющие вынести данные состояния, кэша, логов и настроек в отдельные подкаталоги в иерархиях /var/lib/, /var/cache/, /var/log/ и /etc, содержимое которых сохранится между запусками сервиса. Дополнительно добавлены вспомогательные пары опций, определяющие режим доступа к каталога - StateDirectoryMode, CacheDirectoryMode, LogsDirectoryMode, ConfigurationDirectoryMode.
  • В Systemd-Jornald реализована более агрессивное кеширование из /proc/ , а также запись в /proc/, что позволило увеличить производительность записи логов при большой нагрузке. Так как метаданные читаются в асинхронном режиме, их состояние может немного запаздывать относительно выводимых в лог записей. Владельцам SSD с TLC-памятью рекомендуется быть поосторожнее.
  • В unit-ы добавлена опция IPAccounting, при включении которой для сервиса добавляются счётчики с данными о трафике и числе пакетов. Данные о трафике можно посмотреть через «systemctl status» или «systemd-run --wait»;
  • Обеспечено сохранение в логе сведений о потреблении ресурсов CPU и трафике. Запись создаётся при каждой остановке юнита, если включены опции CPUAccounting или IPAccounting;
  • В unit-ах реализован Firewall, основанный на опциях IPAddressAllow и IPAddressDeny. Ограничения можно наложить как на входящий, так и на исходящий трафик.
  • В systemd-networkd представлена серия новых настроек, задаваемых через файлы .network: Scope (область достижимости) в секции [Address], ConfigureWithoutCarrier (игнорировать статус линка при настройке) в секции [Network], Anonymize (включение опций анонимного профиля RFC 7844) в секции [DHCP], Type (определение спецмаршрутов для направления трафика в blackhole/unreachable/prohibit) в секции [Route]. Добавлена новая секция [RoutingPolicyRule] для задания правил маршрутизации;
  • В файлы .netdev добавлены опции: Table в секции [VRF] для выбора используемой таблицы маршрутизации, Independent в секции [Tunnel] для настройки туннеля независимо от связанного с ним сетевого интерфейса, GroupForwardMask в секции [Bridge] для настройки распространение локальных сетевых кадров между портами сетевого моста;
  • В файлах .link добавлены новые режимы работы опции WakeOnLan, добавлена настройка TCP6SegmentationOffload для включения аппаратного ускорения обработки сегментов TCP/IPv6;
  • В реализацию сервера для анонса маршрутов IPv6 (Router Advertisment) добавлена поддержка отправки записей RDNSS и RDNSSL для передачи настроек DNS;
  • В systemd-nspawn добавлен флаг "--system-call-filter" для добавления и удаления элементов из применяемого по умолчанию фильтра системных вызовов. Реализована возможность определения белых списков системных вызовов с запретом всех остальных (ранее предлагались черные списки);
  • Добавлены новые фильтры групп системных вызовов: @aio, @sync, @chown, @setuid, @memlock, @signal и @timer, которые можно указывать через опцию SystemCallFilter или флаг "--system-call-filter";
  • В опцию ExecStart для unit-файлов добавлены два новых модификатора: При указании префикса "!" команда запускается без смены идентификатора пользователя/группы (без вызова setuid/setgid/setgroups). Второй модификатор "!!" идентичен "!" за исключением того, что его действие игнорируется на системах с поддержкой наследования расширенных прав (capabilities PR_CAP_AMBIENT, появились в ядре 4.3);
  • В systemd-run добавлен флаг "--pipe", при котором в вызываемый сервис systemd передаются файловые дескрипторы на STDIN/STDOUT/STDERR, что позволяет использовать его в цепочке с другими утилитами в shell с передачей данных через неименованные каналы;
  • Для каждого сервиса обеспечено поддержание счётчика перезапусков, который можно посмотреть командой «systemctl show -p NRestarts сервис».
  • Для unit-файлов реализована новая опция LockPersonality, позволяющая на лету привязать сервис к выбранному домену выполнения;
  • В поставку добавлен файл для modprobe.d, обеспечивающий переопределение параметров модуля bonding для корректного управления интерфейсом bond0 из systemd-networkd;
  • В journald.conf добавлена включенная по умолчанию настройка ReadKMsg, управляющая чтением лога ядра в systemd-journald, а также опция LineMax для задания максимального размера строки при выводе логов через STDOUT/STDERR;
  • В nss-myhostname/systemd-resolved по умолчанию обеспечена генерация DNS-записей A/AAAA для хоста «_gateway» вместо ранее применяемого имени «gateway», так как оно используется для внутренних нужд некоторых дистрибутивов (старое поведение можно вернуть во время сборки);
  • Добавлен новый целевой юнит для пользовательских сеансов: «getty-pre.target», который выполняется до консольного входа в систему;
  • Для увеличения качества энтропии в генераторе псевдослучайных числе systemd теперь при запуске каждого виртуального окружения пытается загрузить модуль ядра virtio-rng.ko;
  • В /etc/crypttab обеспечена возможность применения опции _netdev, по аналогии с /etc/fstab, для организации настройки шифрованных устройств после запуска сети; Для подключения внешних обработчиков в cryptsetup.target добавлено два целевых юнита remote-cryptsetup-pre.target и remote-cryptsetup.target, решающих те же задачи, что remote-fs.target и remote-fs-pre.target в local-fs.target;
  • В сервисы добавлена опция UnsetEnvironment, позволяющая убрать любую переменную окружения, которая в обычных условиях будет передана сервису;
  • Команды «systemctl poweroff», «systemctl reboot», «systemctl halt», «systemctl kexec» и «systemctl exit» теперь всегда выполняются в асинхронном режиме, т.е. сразу возвращают управление, не дожидаясь фактического завершения операции;
  • В systemd-resolve добавлен флаг "--reset-server-features", при указании которого очищаются и перезапрашиваются ранее полученные сведения о возможностях вышестоящих DNS-серверов. Отправка данных в лог теперь включает сведения о всех используемых DNS-серверах.

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

★★

Проверено: jollheef ()
Последнее исправление: Deleted (всего исправлений: 1)

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

а как ты эти ремарки достал?

Здесь на ЛОРе они уже неоднократно пробегали.

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

поциент их сам на своём сайтике держит, если к урлу внимательно присмотреться

Harald ★★★★★
()

Вообще-то, граждане, для бана нужно использовать fail2ban! Вы свой сервак/цмску/чтоугодно заставляете в лог писать детально все события, после чего натраливаете на логи fail2ban (с характерными паттернами атаки, на regexp'е) и f2b делает всю работу за вас.

Какоё он файрволл при этом использует — вас не должно волновать (если он не тормозит, конечно). ufw, ядерный netfilter — плевать. Если работает без перегрузки — вот и хорошо.

fail2ban может через определённый промежуток времени и разбанивать ip-шники, и даже детектить диапазоны.

И знаете что?! — Мне плевать, чем именно он будет их банить. Если это будет сустемд-юнит, который работает поверх ядерного netfilter — вот и хорошо. Главное чтоб работал КОРРЕКТНО.

anonymous
()

Для unit-файлов представлены опции RuntimeDirectory и RuntimeDirectoryPreserve

Автор, срочно разупорись, этим опциям сто лет в обед.

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

fail2ban

А что, релиз с поддержкой IPv6 уже вышел? Может быть и в дистрибутивы для продакшена приехал?

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

Таки вышел.

0.10.0 (2017/08/09) - long-awaited 0.10th version
IPv6 support, faster more then ever, more secure, many new features etc. See the ChangeLog for more information.

Можно начинать ждать появления в Debian.

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

Ась? Я не могу пройти мимо фееричного бреда. У ssd - есть такая характеристика - время наработки на отказ. Зависит сие от контролера, типа памяти, а так-еж от техпроцесса по которому данная память выпущена.

Какая разница, если при гонянии в хвост и в гриву этого ресурса хватает на 5+ лет? А больше 5 лет диск уже морально устареет и пора бы менять.

Мой Crucial на 240Гб ещё вроде бы(несколько месяцев назад смотрел) даже на 10% не изношен, а прошло уже 4 года, как на него только кэшей браузера по 10-20Гб в сутки записывается. А ресурс вроде как обещали 50Гб в сутки на протяжении 5 лет.

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

мне нужно набираться знаний как системщику, админу.

Дык за чем дело стало? Берёшь http://0pointer.de/blog/projects/systemd-docs.html открываешь словарик и читаешь, переводя непонятное. Если совсем туго идёт - дуй на стройку штукатуром, с зарплаты оплатишь курсы английского и вперёд :)

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

FIREWALL?

Наконец-то! Вечно был тот ещё геморрой с прикручиванием ссаных костылей в попытке сделать per-application firewall. Хорошо всё-таки что есть systemd - как обычно сделали всё по-уму: http://0pointer.net/blog/ip-accounting-and-access-lists-with-systemd.html

Если вкраце, то eBPF ограничивает на уровне конкретного сервиса/сокета, а общесистемный nftables для всяких там зюзероутеров и прочего.

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

Дык за чем дело стало? Берёшь http://0pointer.de/blog/projects/systemd-docs.html открываешь словарик и читаешь

Мне лень читать доки к ненужнод, там „нюанс” с запуском сервиса от рута в случае указания некоторых имён пользователя описывается?

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

А у меня на трёх машинах проблемы есть.

Вообще ни разу не удивлён.

В моём любимом линупсе

У тебя поди и в сортире нассано. Тоже наверняка проделки заговорщиков в красных шляпах.

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

Мне лень читать доки

Ну надо же, а я уж думал что мне в кой-то веки вменяемый хейтер попался. Шучу конечно, вы все как один скучные и предсказуемые до зевоты.

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

„нюанс” с запуском сервиса от рута в случае указания некоторых имён пользователя
0pointer.de

Забавный бекдор Лёнька для себя оставил.

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

Только эта транзакционность никуда не сплющилась в большинстве случаев применения.

Не хватало ещё моск лишний раз морщить, пытаясь понять, подпадает мой случай под это самое «большинство» или нет. Нафик, только nftables. Хотя и его наверняка p4 с аналогами вытеснят в итоге.

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

Ну надо же, а я уж думал что мне в кой-то веки вменяемый хейтер попался. Шучу конечно, вы все как один скучные и предсказуемые до зевоты.

А я думал что читавший доки поклонник Лёниных поделок расскажет описывается ли в документации по ссылке поведение системгэ в случае указания имени пользователя, к примеру, 0pointer. Ибо я даже не знаю стоит ли тратить время на более детальное её изучение чтоб поржать или нет.

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

А поцтеринг на это что сказал?

Он русского не знает, так что бредовые высеры ЛОРовцев прочитать не может. В оригинале подобного бреда, разумеется, нет.

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

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

Тебе? Не стоит конечно: дурака учить - только портить.

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

Извините, не поспеваю за флюгером:

В итоге Леннарт Поттеринг признал проблему и патч был включён в состав выпуска systemd 234.

Т.е. все эти NOTABUG WONTFIX STOP REOPENING действуют пока Лёнька не получит леща от своего куратора в красношапке. Поэтому перефразирую вопрос: описывалось ли поведение системгэ при указании имени пользователя с цифры до версии 234 или для выявления всех нюансов в его поведении смотреть в документацию к нему таки бесполезно?

Тебе? Не стоит конечно: дурака учить - только портить.

Верно говоришь, поэтому читать ненужно к ненужно чтобы потом тебя учить я не буду. Всё равно ничего полезного помимо описания опций в стиле К.О. там нет.

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

я правильно понял ?

Разумеется нет. Чтобы понять правильно надо читать оригинал, а не то 4.2, что с перепою подтвердили вместо новости.

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

По мне iptables вполне понятен. Ipfw не приходилось применять. Т.е. по твоим словам порог вхождения у ipfw быстро и просто, нежели iptables.

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

пытаясь понять, подпадает мой случай под это самое «большинство» или нет.

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

AS ★★★★★
()

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

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

Да вот что-то я не был бы так уверен. Линус, конечно, не пустит, но мало ли чего.

Barracuda72 ★★
()

Замечаю, что Ubuntu после перехода на systemd довольно часто стал выключаться очень долго, даже Windows переплюнул.

Никаких сервисов, чистый десктоп.

Где копать?

anonymous
()

Владельцам SSD с TLC-памятью рекомендуется быть поосторожнее

найс формулировка для ключевого компонента системы

MyTrooName ★★★★★
()

Обновил на всех серверах, спасибо за новость.

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

Убери сплеш-скрин (перманентно через /etc/default/grub или нажми Ctrl-Alt-Backspace) и смотри, что там повисло.

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

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

Это каким органом ты пришёл к подобному умозаключению?

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

найс формулировка для ключевого компонента системы

С каких это пор хреново написанная новость на ЛОРе стала ключевым компонентом некой системы?

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

Ибо предсказуемость поведения явно не его конёк.

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

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

Зато ты в этом просто чемпион
Зато

Я рад что ты признал непредсказуемость и недокументированность поведения ненужнод, которое вместе с полным отсутствием проектирования, низким качеством Лёниного говнокода и принципиальным отсутствием проверок входных данных закономерно приводит к толстому, жирному и глючному решету, использовать которое будет лишь ССЗБ.

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

заплесневелые мифы, бредовость которых разобрали ещё пару лет назад

Давай по пунктах что конкретно тебе не нравится.

пару лет назад

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

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

Это каким органом ты пришёл к подобному умозаключению?

Ты сам навёл на эту мысль своим «пытаюсь понять». Ну опиши свой случай тогда.

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

здравомыслящий юзер давно свалил на SysV init

Ну смотри. У тебя есть пара тысяч серверов, на которых стоят RHEL/Centos/Ubuntu с systemd. Твои действия?

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

За схему 3 спасибо, не встречал в сети такую.

Она самодельная. По текстовому описанию составлена.

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

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

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

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

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

Возможно удобством является запуск сервиса от рута если указанное имя пользователя по какой-либо причине не понравилось системгэ?

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

В чём удобство то?

Удобство вещь субъективная, большинству нравятся принципы СистемГ, по этому он в деле, тебе нравятся простыни на баше, пиши их, кто тебе мешает? Бомбит из-за того, что Лёня сделал не так как тебе надо?

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

Ну ты давай не съезжай. Я тебе совершенно реальную ситуацию описываю - тысячи хостов с последними версиями. Твои действия? Допустим, тебя это на собеседовании спросили.

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

Я тебе совершенно реальную ситуацию описываю - тысячи хостов с последними версиями.

Только не надо тут демагогий, ладно? Конечно, никто тогда не будет переходить...но ведь есть одно НО. Неужели ты думаешь, что суровые админы не читают ченжелогов, и торопятся обновляться? Ты вспомни ситуацию с Debian 8.

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