LINUX.ORG.RU

systemd 251

 , , ,


1

3

Представлен релиз systemd 251 — свободного (GPLv2+) системного менеджера GNU/Linux.

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

  • повышены требования к окружению (Linux kernel 4.15 c опцией CLOCK_BOOTTIME, С11 с расширениями GNU) - поскольку разработчики systemd тщательно заботятся об обратной совместимости, заголовочные файлы по-прежнему C89

  • sd-boot сохраняет хэш командной строки ядра по-умолчанию в TPM PCR 12 вместо PCR 8 для улучшения совместимости с Grub, который активно использует данный регистр

  • в Boot Loader Specification добавлен файл /loader/entries.srel с описанием формата записей в /loader/entries/directory в ESP

  • юниты, прибитые systemd-oomd, получат соответствующий статус oom-kill

  • множество Private*= и Protect*= опций теперь доступно и для пользовательского инстанса системного менеджера (при наличии user namespaces в системе)

  • опция LoadCredential= теперь поддерживает папки /etc/credstore/, /run/credstore/, /usr/lib/credstore/ - см https://systemd.io/CREDENTIALS/

  • документированы экспортные форматы journal - см. https://systemd.io/JOURNAL_EXPORT_FORMATS/

  • новая команда udevadm lock позволяет получить эксклюзивный доступ к блочному устройству на время выполнения критических операций - см. https://systemd.io/BLOCK_DEVICE_LOCKING/

  • добавлен юнит systemd-networkd-wait-online@<interface>.service для удобного ожидания появления сети на определённом интерфейсе

  • новая опция сборки default-user-shell= позволяет задать пользовательскую оболочку в явном виде вместо окаянного bash

  • сервис systemd-timesyncd обзавёлся D-Bus API

  • новый (экспериментальный) сервис systemd-sysupdate для атомарного (типа A/B) обновления

И множество любопытных новшеств, заслуживающих пристального изучения экспертами ЛОР :)

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

★★★★★

Проверено: maxcom ()
Последнее исправление: hobbit (всего исправлений: 8)

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

Или вы хотите как в винде, чтобы с падением графики падала вся система?

Да, меня это устроит если позволит значительно упростить систему. Всё равно на практике на десктопе зависание графики означает практически неизбежную перезагрузку.
А на сервере графики либо вообще нет, либо она работает в щадящем без нагрузки режиме и поэтому просто не зависает.

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

Всё равно на практике на десктопе зависание графики означает практически неизбежную перезагрузку.

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

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

И чего ты этим достигал? Выгода какая?
Ну прибил ты иксы, прибились и все графические программы. Остались лишь одни демоны. Смысл во всём этом? Всё равно дальше на перезагрузку.
Ну или startx и чем это будет отличаться от перезагрузки кроме как бОльшим количеством возни?

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

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

/usr/sbin/my-fucking-daemon –arg1 –arg2 &

Ну во-первых. Скрипты для запуска должны иметь всего один ключевой параметр: start, stop, restart и т.д., чтобы как-то унифицировать этот зоопарк, а не то что вы написали выше. Во-вторых, никакого & за пределами и внутри скрипта быть не должно, скрипт должен запускать процесс уже в фоне. Причём & нужно избегать, потому что он привязывает запуск процесса, к текущему родительскому shell процессу. Т.е. грохается терминал - грохается сервис. Тут обычно помогает start-stop-daemon, либо реализуют background режим в сам бинарь приложения.

Заглянув в systemd-шные unit-файлы, я не понял буквально ничего.

[Unit]
Description=Dbus after suspend service

[Service]
ExecStart=/home/user/Scripts/dbus-after-suspend.py
WorkingDirectory=/home/user/Scripts

[Install]
WantedBy=default.target

Самый тупой systemd unit. Что тут не понятного? WantedBy, кстати говорит что должно триггерить запуск Unit-а, чтобы сервис запускался в нужно порядке.

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

Требую извинения перед Поттерингом лично за вышесказанное:

три недели поноса и мучительную смерть.

Skullnet ★★★★★
()
Последнее исправление: Skullnet (всего исправлений: 2)
Ответ на: комментарий от SpaceRanger

Слава и почёт великому Поттерингу за решающий вклад в унификацию и поступательное движение к успеху линукса!

Аве Поттеринг! Аве!

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

Чем это плохо? Все стесняюсь спросить.

Если это неплохо,то в чем проблема поставить таймаут в 1 секунду? Системд его точно также и прибьет. Об этом и речь, что проблем больше не стало, просто то, что раньше делали не задумываясь, теперь просят указать явно.

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

Всё равно на практике на десктопе зависание графики означает практически неизбежную перезагрузку.

Это мудацкая логика. И я не понимаю, что вы с такой логикой делаете на ЛОР-е? Почему бы тогда не поставить поделку дядюшки Билли, где если что-то поменял - иди перезагружай систему целиком. А в линуксе наоборот можно перезапустить только отдельный компонент системы, даже если он упал, и вуаля. Ну, кроме ядра, наверное…

Уже забыли про этот мем? https://i.pinimg.com/originals/e5/f6/78/e5f6788cfc9325566914041d3d5c38fe.jpg

Skullnet ★★★★★
()
Последнее исправление: Skullnet (всего исправлений: 4)
Ответ на: комментарий от frost_ii

Поттеринг тщеславный дурак и это медицинский факт.

Он не дурак. Вы просто не видели настоящих дураков. Дурак не смог бы написать и десятую часть того, что написал Поттеринг. Посмотрите на Wayland, ради которого GTK и mesa драйвера ломают через колено е*нутые на всю голову хипстеры.

Тщеславие само по себе никогда не было проблемой, лишь бы человек не диктатурнутый SJW-фашист, как, например, разработчики GNOME.

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

диктатурнутый SJW фашист, как, например, разработчики GNOME

Диктатурнутость у гноморазрабов есть, да - «у нас свое видение, кому не нравится, не пользуйтесь GNOME и не контрибьютьте идущего вразрез с нашим видением, а не нравится вам потому, что вы ограниченные и не хотите пробовать нового». А вот что там специфического в SJW-стайле - тащемта то, что часть разрабов от этого дела фанатеет и постит про свое фанатство, связано с процессом собственно разработки от слова никак. Ну да, COC, не хамить другим разрабам, если они не натуралы, используя оскорбительные отсылки к их ориентации - но это нормальная вежливость. Трудовая этика, так сказать. Если какой гей или транс наклепал говнокода, то крыть его следует говнокодером, а не пи***сом.

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

Уже забыли про этот мем?

Сто лет как explorer.exe прибить можно и перезапустить, если с какого-то дуба заглючил (больше года такого не видел); перезагрузки после обновлений системы - ну так в Линуксах то же самое; единственное, с чем сталкивался (пару раз в год) - так это с перезагрузками, если удаляемый софт добавлял изменения в меню Проводника, но и то чаще сталкиваюсь с тем, что научились и тут обходиться без перезагрузки софтоделы.

Слухи о кривости и подельности Windows сильно преувеличены.

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

Слухи о кривости и подельности Windows сильно преувеличены.

Дело не столько в кривости, сколько в монолитности. Монолитность имеет архитектурные проблемы, которые заставляют юзера перезагружать всю инфраструктуру целиком, вместо частичной перезагрузки. Также монолитность привязывает тебя к определенным решениям. Systemd даже не пытается быть чем-то монолитным, это просто лаунчер для сервисов юзерспейса, в котором те же shell скрипты никуда не исчезали целиком. А вот Wayland пытается привязать пользователя к одной единственно правильной рассовой-чистой™ арийской DE под названием GNOME, через запиливание всех фич графического сервера в монолитный композитор. MS Windows такой же монолит, только проприетарный.

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

Почему бы тогда не поставить поделку дядюшки Билли, где если что-то поменял - иди перезагружай систему целиком

В современных Windows видеодрайвер на горячую перегрузиться может без ребутов. Не видел, чтобы Linux умел подобное для видеодрайверов.

А вот Wayland пытается привязать пользователя к одной единственно правильной рассовой-чистой™ арийской DE под названием GNOME, через запиливание всех фич графического сервера в монолитный композитор.

Если это так, тогда почему KDE-разработчики только рады тому, что вся необходимая функциональность переместится в их композитор?

X has some serious issues and is rather old. The protocol is designed for the usecases three decades ago. Over the last years more and more functionality has been moved from X either into the kernel or into the compositors. The X server is more or less only a proxy between kernel, compositor and the X clients.

Today the compositor does everything the X server used to do. There are some remaining features not yet moved into the compositor (e.g. input handling) but those would make most sense in the compositor. The best situation would be to let the compositor directly work together with the kernel for rendering and input handling and manage the clients directly, which means to remove the Proxy. This is what Wayland is about. More reasons for Wayland in the FAQ.

In Plasma we need Wayland support as we are hitting the limitations of X all the time. Wayland will simplify our architecture and allow us to composite the screen in the way we consider as most useful.

https://community.kde.org/KWin/Wayland#Why_Plasma_needs_Wayland.3F

EXL ★★★★★
()

для атомарного (типа A/B) обновления

Это же для телефонов или где-то в PC применимо?

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

В современных Windows видеодрайвер на горячую перегрузиться может без ребутов.

Хочу увидеть пруфы.

Не видел, чтобы Linux умел подобное для видеодрайверов.

Для того чтобы перезагрузить видеодрайвер в юзерспейсе, достаточно перезагрузить X-сервер.

Если это так, тогда почему KDE-разработчики только рады тому, что вся необходимая функциональность переместится в их композитор?

Конечно рады. Это же отличный шанс монополизировать GNU/Linux десктоп аналогично тому что делают GNOME разработчики. Вот только это им боком выходит, потому что мяч не на их стороне, да и вяленный кривой и уже ~10 лет как гниёт. Не складывается мечта создать KDE OS аналогично андроидовским прошивкам. Печалька.

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

в системд реализовали параллельный запуск сервисов, а в анархическом shell аду такое нельзя сделать вообще никак

Вообще-то, проблем с этим в sysvinit нет:

  • добавляются LSB-заголовки, в которых указываются зависимости;
  • система инициализации строит граф и запускает несвязанные подграфы параллельно.

Примерно так работала связка sysvinit + insserv в Debian до перехода на systemd.

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

Хм. Но KDE же почти совсем научили работать с Wayland? Кажется, просто GNOME был исторически первым Wayland friendly DE, ну и разработчики Wayland заботятся первым делом о том, чтобы все работало в «дефолтовом» DE для тех же RHL и Ubuntu.

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

Хочу увидеть пруфы

Да Фома ты неверующий. Всё просто - берется драйвер Nvidia посвежее, чем тот, который стоит в Винде, инсталлится и… работает. Можно в режиме «начисто», но может расположение иконок на рабстоле послетать, потому что при таком способе временно ставится минимальное разрешение экрана, но опять таки перезагрузка не нужна. Делаю так уже много, много лет, это как бы норма уже. А вот с аудиодрайверами в Винде так не прокатывает, по крайней мере, Realtek - перезагрузка, кажется, чуть ли не два раза: после сноса предыдущих и после доустановки новых.

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

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

/usr/sbin/my-fucking-daemon –arg1 –arg2 &

Так можно написать только кривое говно. Напомнить, что демоны обычно форкаются по 2 раза?

Написать полностью корректный init-скрипт (т.е. не тот, который худо-бедно будет работать на вашем localhost, а применимый в проде) — задача на самом деле весьма нетривиальная.

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

Хм. Но KDE же почти совсем научили работать с Wayland? Кажется, просто GNOME был исторически первым Wayland friendly DE, ну и разработчики Wayland заботятся первым делом о том, чтобы все работало в «дефолтовом» DE для тех же RHL и Ubuntu.

Ну хорошо. Допустим им повезет и они через кровь и массовые расстрелы заставят KDE работать на Wayland со своим композитором где нибудь через лет 10. А дальше что? Вы думаете народ побежит на Wayland? Зачем? В чём преимущество? В том что не работают все иксовые приложения? В том, что не работают приложения для записи с экрана? Ну, хорошо, делаем костыль через поддержку pipewire. И мы приходит к аналогичной Android-у архитектуре, которая уже 10 лет как сыпется, что даже Google хочет от неё отказаться, потому что это вавилонская башня, которую уже просто не разгрести. Но это все фантастический сценарий.

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

Мне это ни о чём не говорит. Какое шаманство винда делает там у себя внутри нам не известно. Скорее всего там написана фигня, а система на самом деле вообще делает что-то другое.

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

Ну я как-то делал rmmod -f radeon && modprobe radeon… И оно даже работало. Но, конечно, это не гарантирует работу, сносит всю запущенную графику и проч. — т.е. ни разу не аналог.

Хотя технически особой сложности это реализовать быть не должно.

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

Так можно написать только кривое говно. Напомнить, что демоны обычно форкаются по 2 раза?

Написать полностью корректный init-скрипт (т.е. не тот, который худо-бедно будет работать на вашем localhost, а применимый в проде) — задача на самом деле весьма нетривиальная.

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

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

С проприетарным NVidia драйвером можно сделать то же самое, но кажется их реализация в Xorg не потерпит такое и X тоже придется перезапустить.

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

Насчёт PC не знаю, но в роутерах всё чаще применяют (Xiaomi точно и, вроде, Keenetic в последнее время, если не ошибаюсь). На роутере, конечно, systemd вряд ли встретишь, но, всё же, роутер ближе к PC, чем смартфон.

MozillaFirefox ★★★★★
()
Последнее исправление: MozillaFirefox (всего исправлений: 2)
Ответ на: комментарий от Skullnet

Вот именно, поэтому умные люди и придумали systemd, чтобы унифицировать весь функционал запуска

Не только systemd. Задолго до него были smf, launchd, upstart и проч.

Вырезать скрипты полностью, конечно же, не получится, но хотя бы что-то да и унифицируется.

А полностью и не нужно. Если какой-то сервис запускается не напрямую бинарником, а небольшим скриптом типа:

#!/bin/sh

exec /path/to/daemon --cpus $(nproc)

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

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

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

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

Ответственно заявляю

У тебя разве есть соответствующие компетенции?

категорически неюзабельная

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

Мне кажется, у тебя просто синдром утенка, потому что ты плохо понимаешь архитектуру UNIX, и то, зачем был нужен SysV Init в его изначальном виде. Спойлер: он был нужен за тем же, зачем systemd сейчас, просто его использование пошло не в ту сторону из-за неюзабельности. Если сомневаешься - рекомендую вспомнить формат inittab.

liksys ★★★☆
()
Последнее исправление: liksys (всего исправлений: 3)
Ответ на: комментарий от Croco

согласен с Зеленым более чем полностью :о)

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

постоянно тестирую, просматриваю выходы всех основных дистров линукса. на витруалке - вроде все красиво, но, как говориться, забыли про овраги. достаточно установить на боевое железо и ... упс, без матов ни как, да и никак вообще. комп/ы (ака рабочие станции) на работе используется для очень широкого круга задач и ... «иной» дистрибютив... короче, «дохнет» (коротко, без соплей пусть будет так)

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

на некоторых компах до сих пор установлена sl12.2 потому как только на ней удалось собрать максимально полный рабочий набор софта.

и на фоне всего этого... простите, еще и системд рулить...сопли за ней подтирать...

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

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

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

добавлен юнит systemd-networkd-wait-online@<interface>.service для удобного ожидание появления сети на определённом интерфейсе

5 лет ждал.

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

я смог поднять сеть от телефона в пару команд

Это достижение не OpenBSD, а NDIS

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

сделать systemctl reload && systemctrl start servicename

systemctl enable --now /path/to/file.service

Создаст нужные симлинки и тут же запустит.

Полезно, если что-то самопальное собираешь в /opt и оттуда же запускаешь. Из «мусора» в системе будут только симлинки на юнит.

Radjah ★★★★★
()
Ответ на: комментарий от Jax_iv
cat /etc/systemd/system.conf

#DefaultTimeoutStartSec=90s
#DefaultTimeoutStopSec=90s
#DefaultRestartSec=100ms
#DefaultStartLimitInterval=10s
AVL2 ★★★★★
()
Ответ на: комментарий от sunjob

сижу с первых доступных релизов на слаке и … не вижу альтернативы вообще

Какой лютый мозгочервь у этого человека. Медицина тут бессильна…

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

Wayland пытается привязать пользователя к одной единственно правильной рассовой-чистой™ арийской DE под названием GNOME

тогда почему KDE-разработчики только рады [Wayland]?

Конечно рады. Это же отличный шанс монополизировать GNU/Linux десктоп аналогично тому что делают GNOME разработчики

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

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

Месье, я официальный представитель великого Леннарта на территории РФ и требую немедленных извинений и сатисфакции!

SpaceRanger ★★
()

повышены требования к окружению (Linux kernel 4.15 c опцией CLOCK_BOOTTIME, С11 с расширениями GNU) - поскольку разработчики systemd тщательно заботятся об обратной совместимости, заголовочные файлы по-прежнему C89

Жирный наброс прямо в новости? Одобряю, а то лор уже каким-то совсем пресным стал.

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

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

п.с. держитесь обоими руками, а то прорвет! :о)

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

Целый представитель дурака? Ух ты. Так вот клопов танками не давят, живите с этим.

Поттеринг всегда был тупым говнокодером и все его проекты - говнокод. Это уже многократно обсуждалось и повторений не требует.

Он выплыл на том,что шапке однажды понадобился NIH говнокодер и они нашли идеального из палаты мер и весов.Когда сустемДы ещё только зачинался и САМ был ближе к процессу и даже самолично отвечал на багрепорты, было очевидно,что персонаж клинический идиот. Сейчас его несколько отодвинули на менеджерские дела и он уже не так сильно отсвечивает, но те, у кого память не как у золотой рыбки, помнят

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

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

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

Любой, кто посмел похвалить *BSD — виндузятник?

Любой ламер, использующий бздю понтов ради - виндузятник. Потому что у не-ламера хватает мозгов не путать networkd с NetworkManager, и уж тем более хватает мозгов разобраться как устроена настройка сети - в любой юникс-подобной ОС, тем более в идеально документированном systemd-networkd.

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

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

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

Любопытно, а что за дистр? У нас самосборный конструктор на Yocto был - никаких проблем за годы не вылезло.

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

И чего ты этим достигал? Выгода какая?
Ну прибил ты иксы, прибились и все графические программы. Остались лишь одни демоны. Смысл во всём этом? Всё равно дальше на перезагрузку. Ну или startx и чем это будет отличаться от перезагрузки кроме как бОльшим количеством возни?

Ну тут уж ты перегнул. После умирания иксов остаётся запущено много чего. Например, я свои видеокарты (!) зачастую пользую вообще без иксов. А если что-то полезное считалось на CPU, то этому расчёту на падение иксов д.б. вообще насрать, пускай дальше считает

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