LINUX.ORG.RU

systemd 246

 , , , ,


1

3

Не нуждающийся в представлении системный менеджер для GNU/Linux подготовил очередной релиз за номером 246.

В этом выпуске:

  • автоматическая загрузка правил безопасности AppArmor
  • поддержка проверки шифрования диска в юнитах с помощью ConditionPathIsEncrypted=/AssertPathIsEncrypted=
  • поддержка проверки переменных окружения ConditionEnvironment=/AssertEnvironment=
  • поддержка проверки цифровой подписи раздела (dm-verity) в .service юнитах
  • возможность передачи ключей и сертификатов через сокеты AF_UNIX без необходимости сохранения в файл
  • дополнительный спецификаторы в шаблонах юнитов для различных параметров из /etc/os-release
  • убрана поддержка .include из юнит файлов (была объявлена устаревшей 6 лет назад)
  • убрана поддержка недокументированных вариантов syslog и syslog-console для StandardError=/StandardOutput= в юнитах - вместо этого используются современные опции journal и journal+console
  • автоматические ограничения на размер всех tmpfs монтируемых самим systemd (/tmp, /run…)
  • дополнительные опции для systemd из команды загрузки ядра

И многое другое -см. https://github.com/systemd/systemd/blob/master/NEWS

От себя добавлю что релиз выглядит не столь новаторским как прошлый, добавивший systemd-repart, systemd-homed и userdb. Просто множество различных улучшений, удобств и исправлений.

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

★★

Проверено: alpha ()

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

Никто не спорит, что sysVinit — копролит, место которого в восьмидесятых. Но зачем его заменять «системным менеджером»? Можно сделать нормальную модульную софтину со всеми фичами, которых не хватало в sysVinit, но без оверинжиниринга? Собственно, такой системой является OpenRC. Таким был upstart. Пульса не вызывает такой реакции, потому что там меньше наркомании. Со временем оно пообтесалось и даже научилось не выжирать процессор на 100%. А от systemD такое впечатление, что Леня сам не понимает, чего он хочет от своего творения и лепит туда все подряд.

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

Шизоид это не болезнь, если что. Да и у шизоида как у акцентуанта есть очень большие интеллектуальные преимущества. То что сейчас слово «шизоид» используют как оскорбление лишь говорит о неграмотности и невежественности большинства людей.

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

https://github.com/systemd/systemd/issues/6237

Здесь вынужден встать на сторону Леннарта. Никто, включая systemd, не обязан красиво обрабатывать ситуации которые по документации происходить вообще не должны, независимо от пользовательского ввода, а то конца края этому не будет видно.

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

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

Но люди тратят время на программирование ради какого-то практического профита. Судя по всему, просто нет задач, требующих замены systemd (вне зависимости от его кривизны или переусложнённости) на нечто иное.

quantum-troll ★★★★★ ()
Ответ на: комментарий от Gentooshnik

Если в зависимости от «пользовательского ввода» происходит ситуация, когда что-то ломается, или не обрабатывается, и это не отражено в документации, то значит это - ошибка. Если такая ошибка не замечается, либо не исправляется несколько релизов, то это говнокод. Это относится не только к systemd, а вообще - к любому ПО.

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

там по документации только дефис упомянут как исключение.

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

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

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

А в какой документации написано, что имя пользователя не может начинаться с числа?

И ещё, в документации сказано, что ExecStart должен быть валидной командой (For each of the specified commands, the first argument must be either an absolute path to an executable or a simple file name without any slashes). Значит ли это, что если там невалидная команда, то можно запустить telnet-сервер без пароля с повышенными привилегиями?

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

Обожаю systemd как минимум за то, что любые его упоминания приводят к дичайшим бурлениям говен. Едва ли не лучший индикатор для людей в (около)линуксовом мире.

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

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

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

Прибивание udev <…> гвоздями к системд это

…это 4.2.

…login… это не переусложнение?

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

Видишь ли, «переусложнение» — это когда ты можешь предложить более простую альтернативу, которая бы решала те же задачи. А её пока что не видно.

Те же бинарные логи, для чтения которых нужно изобретать велосипеды?

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

homed и repart это не переусложнение?

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

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

А systemd-boot?

А systemd-boot — это переупрощение. Алё, это самый легковесный UEFI-загрузчик из существующих ныне.

Завязывание GDM на systemd?

Я тебе больше скажу, завязываение всего гнома на systemd. И опять же, это противоположность переусложнению: из гнома выкинули велосипедный недосупервизор, который запускает сессию и все вспомогательные демоны, и заменили на стандартный инструмент.

На всякий случай, в KDE тоже есть такой глючный и кривой велосипед (kded и ksmчототам). Это так, чтобы ты не говорил, что «ну это у вас в гноме переусложняют».

Одним словом, считается ли попытка запустить щупальца во все компоненты системы переусложнением?

Нет, конечно.

Видишь ли, «запускание щупалец» происходит только в воспалённом сознании ЛОРовских теоретиков, которые в жизни не спланировали ни одной архитектуры и скорее всего не написали ни одной строчки промышленного опенсорсного кода, и поэтому понятия не имеют, как оно там на самом деле. А в реальности происходит коллаборация и избавление от велосипедов.

В то время, как openrc обладает всеми фишками системд как инита

4.2.

но не пытается лезть во все и вся

Ну и очень жаль.

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

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

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

Справедливости ради, в свежих версиях OpenRC есть supervise-daemon, дающий ортодоксальным ребятам возможность использовать фишки, которых раньше без systemd очень не хватало. Тот самый мониторинг процесса сервиса с поддержкой перезапуска и перенаправление его stdout|stderr в лог (правда, пока что только в файл).

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

примеры сломанных юнитов и ссылки на багтрекер - это отсебятина?

Нет. Но выводы, которые делаются из этих фактов — отсебятина (т. к. не следуют из приведённых фактов).

Там такой говнокод, что

Это пример так называемого вранья.

сам Поттеринг не рекомендует использовать Conflicts= в общем случае.

Я не вижу там «не-рекомендации использовать Conflicts=». Там написано, что в большинстве случаев Conflicts= является неправильным решением возникающей прикладной проблемы.

Как из этого следует мифический «говнокод», тоже не понятно.

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

Приведи пруф. Я подкрепил свое утвердение аргументом. Ты сказал, что аргумент говно, но никаких ссылок не привел. Значит, твое опровержение — не опровержение, пока не приведешь пруфы.

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

я смотрю, ты новичок

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

не верно. перед этим сделали openrc, так он так и остался где-то на обочине.

хотя в сущности это обычная так-себе софтина.

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

Не понимаю, почему именно systemd так поляризовал сообщество. Некоторые люди его боготворят, а некоторые – ненавидят

это выдает в тебе уровень владения IT. потому что именно людей, которые работают в айти, это больше всего поляризует. привожу пример. на двух ОС, CentOS и FreeBSD, я столкнулся с одной и той же проблемой. fsck не может корректно обработать ошибку файловой системы, падает и система не грузится. мне надо выяснить суть ошибки, поработав отладчиком. в случае с systemd вызов fsck осуществляется где-то в кучу C кода и требуется доступ в интернет, чтобы посмотреть исходники. в случае с FreeBSD - все в баш-скриптах, ты начинаешь их править сразу.

systemd - не просто софтина, это софтина, которая является базовой компонентой и при этом нарушает принципы UNIX (маленькие кубики, из которых каждый может сделать что-то свое). это софтина по принципу Windows, она не гибкая, но пыжится охватить все возможные ситуации (отсюда такие changelogs). Те, чьи юзкейсы она покрывает, довольны. Все остальные нет.

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

Я подкрепил свое утвердение аргументом.

Твой аргумент голословен.

Более того, в статье на википедии строго говоря ничего даже не сказано про зависимость systemd от udev. Там написано, что какие-то наркоманы форкнули udev, чтобы избежать «зависимости от архитектуры systemd». Что под этим понимается — решительно непонятно.

Значит, твое опровержение — не опровержение, пока не приведешь пруфы.

Твой аргумент — не аргумент, пока ты не приведёшь пруфы. Статья на википедии с голословным заявлением им не является.

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

ТВОЙ АРГУМЕНТ — НЕ АРГУМЕНТ, ПОКА ТЫ НЕ ПРИВЕДЁШЬ ПРУФЫ1111!!!!

чем мне нравится systemd, так это тем, что часто релизится и дает поводы для срачей споров минимум 4 раза в год:) как санта-барбара прям) 246 серия: хулио узнает, что его родной home на самом деле systemd-homed.

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

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

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

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

Ты понимаешь, что «собирается из архива с исходниками systemd» и «может работать в системе, где PID 1 — не systemd» — разные утверждения и друг другу не противоречат?

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

Разве? Я, конечно, завтра озадачусь и проверю, но всё-таки — что изменилось, что он вдруг перестал собираться и работать, но при этом пакет sys-fs/udev в дереве остался и не замаскан? Заметь, что для инсталляций Gentoo с systemd этот пакет не используется.

spijet ★★★ ()

Господа, тред прочитал, но так и не понял, что хорошо, а что плохо. Мне, кажется, жить стало легче, теперь, если что-то идёт не так, то решение, скорее всего, будет начинаться со слова systemctl, что стало привычно и отрадно. А вот дзен journalctl, признаюсь, я так и не раскурил.

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

Я тебе больше скажу, завязываение всего гнома на systemd. И опять же, это противоположность переусложнению: из гнома выкинули велосипедный недосупервизор

А может, надо просто написать нормальный супервизор вместо велосипедного и не прибивать DE к иниту? Раньше можно было спокойно скомпилировать гном, скажем, во фряхе. Теперь нужно либо форкать гном, либо тащить весь systemd во фряху.

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

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

Удивительно, но люди с претензией на обладание знаниями и компетенциями сисадмина не знают про утилиту strings, которая входит в GNU Binutils и позволяет извлекать текстовые строки из бинарных файлов. Это на случай, если возникла необходимость прочитать эти самые логи где-то, где нет команды journalctl (например, из супер-урезанной live-системы).

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

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

Его уже написали. Называется systemd.

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

Раньше можно было спокойно скомпилировать гном, скажем, во фряхе. Теперь нужно либо форкать гном, либо тащить весь systemd во фряху.

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

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

А ls и cp «являются частью» GNU Coreutils. Тоже страшный и ужасный монолит, или всё-таки «является частью» здесь значит «входит в поставку и распространяется вместе с»?

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

И про GNOME — это всё-таки решение его разработчиков, какие системные интерфейсы использовать. Ругать systemd за то, что кто-то другой решил использовать его функции, не имеет смысла. Это как сказать что-то вроде «на машинах BMW часто ездят грубые и агрессивные люди, значит BMW — плохие машины».

spijet ★★★ ()