LINUX.ORG.RU

uselessd — форк systemd

 , ,


6

8

uselessd — попытка урезать systemd до базовых функций: initd, супервайзор процессов, система зависимостей — но без изоляционизма и агрессивной навязчивости (когда комбайн лезет всюду и делает себя незаменимым). Также обеспечивается поддержка платформ без glibc и планируется поддержка ядер отличных от Linux. За основу взят systemd 208.

На сайте перечислены следующие ключевые отличия:

  • Совместимость с musl и uClibc.
  • Отказ от journald, libqrencode и libmicrohttpd. Отказ от бинарных логов. Лог по умолчанию идёт в LOG_TARGET_KMSG_OR_SYSLOG.
  • libudev и udevd необязательны. Ноды устройств можно создавать чем угодно.
  • Удалены избыточные типы юнитов: devices, timers, swaps, mounts, automounts.
    • Device units завязаны на udev и вместо них можно обойтись правилами udev.
    • Timer units не нужны, так как есть cron и его новые аналоги, например fcron.
    • Swap units удалили как сложные, агрессивные и малополезные. Рекомендуют пользоваться настройками sysctl и util-linux.
    • Automount units и mount units удалены для упрощения. Рекомендуют autofs или Berkeley Automounter.
  • Удалены вспомогательные демоны (hostnamed, timedated, localed, logind...) Удалены генераторы кроме getty-generator и rc-local-generator, так как они дублировали имеющийся функционал или были привязаны к удалённым типам юнитов.
  • Удалены средства настройки систем MAC/ACL, включая SMACK, IMA и SELinux, чтобы не загромождать и не привязываться к одной системе. Для совместимости с существующими конфигурациями остались поддержка SELinux в D-Bus API и SMACK в сокетах.
  • systemd-fsck заменили вызовом /sbin/fsck.
  • Частичная поддержка FreeBSD.

Авторы uselessd подчёркивают, что он ещё сырой, и не рекомендуют его для повседневного использования.

Новость на OpenNet

Исходные тексты

>>> Сайт проекта

★★★★★

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

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

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

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

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

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

Какая, казалось бы, разница до активности пользователя на том или ином терминале? Зачем что-то запрещать пользователю, который и так не активен?

thriller ★★ ()

Мне кажется, что проект пилит либо кто-то из ЛОР-овцев, либо хорошо знакомый с фольклором. Назвать проект «ненужнод», надо же.

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

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

Ситуация 1. Допустим, есть два сита, у каждого — свой набор устройств ввода и своя аудиокарта. На первом сите залогинен пользователь A, на втором — пользователь B. logind занимается тем, что разрешает пользователю A доступ только к устройствам первого сита, а пользователю B — только к устройствам второго сита. Если этого не сделать, то иксы, запущенные первыми, захватят оба набора устройств ввода (уже плохо), а плеер, запущенный первым, захватит первую в списке аудиокарту (не придавая значения тому, на каком она сите).

Ситуация 2. Допустим, есть один сит. Логинится пользователь A, включает музыку и запускает кейлоггер. Потом нажимает «сменить пользователя», запускаются вторые иксы и логинится пользователь B. Если в этот момент не забрать у пользователя A доступ к аудиокарте, его музыка будет играть дальше, а если не забрать доступ к устройствам ввода — то запущенный им кейлоггер радостно считает пароль пользователя B (и вообще всё, что последний будет вводить с клавиатуры).

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

Надо бы теги разделить: сделать отдельный тег про вопросы про systemd, и отдельный тег про systemd-вакханалию.

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

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

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

лучше поттерингу отрежь

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

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

bj ()

Как программу назовёшь, так они и будет работать. Systemd во главе большинства систем, а uselessd бесполезен из-за большого числа удалённых полезных фич.

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

Почему всем этим должен заниматься systemd

Наименее черезжопищное решение.

и почему это нужно на обычных десктопах с одним (!) ситом?

Да хоть от рута сиди с init=/bin/bash. Нормальные пользователи десктопного линукса просто возьмут убунту свой любимый дистрибутив, в котором сразу всё работает как надо, и где скорее всего будет системд.

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

Куда уж без QR-кодов. И как мы раньше жили... не представляю.

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

Почему всем этим должен заниматься systemd

Не systemd, а logind.

почему это нужно на обычных десктопах с одним (!) ситом?

См. «ситуацию 2».

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

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

Ну вон

devices, timers, swaps, mounts, automounts

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

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

Наименее черезжопищное решение.

consolekit был и до systemd. А logind, по сути, ничем не отличается, кроме торчащих шляпок от гвоздей.

Да хоть от рута сиди с init=/bin/bash.

Собственно без сессий и сидел, пока не пришел леня. А то с ними и волшебным polkit никогда ничего толком не работало.

Вопрос как всегда в выборе.

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

А то с ними и волшебным polkit никогда ничего толком не работало.

И потом этот же человек спрашивает «а зачем нужен сервис который бы это чинил?»

Гвозди бы делать из этих людей

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

чего то ты за---ся :)

на обоих твоих «ситах» будет запущено по тривиальному «прибитому гвоздями» xdm и они же чистят сессию за пользователем (как собственно и при однопользовательском варианте)

все это настраиватся максимум за полчаса (и то ввиду редкости машины в которую воткнули два-три-четыре комплекта устройств)

PS если что, то я все это настраивал и ещё в районе 2000 :)

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

Не systemd, а logind.

Да-да, systemd это прекрасная модульная система, правда зависимость можно прописать только на все модули сразу, гг.

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

Могу поспорить, тебе мультисит тоже не нужен, как и 99% остальных пользователей, тут особом шерлоком не надо быть чтобы обобщить.

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

Как-то же эти программы сейчас взаимодействуют, значит не помеха.

Решили провести эксперимент, а что будет если сделать более монолитную архитектуру. Получилось удобнее, как минимум для дистроделателей. Поэтому сейчас во многих дистрах уже есть или будет systemd. Для демонописателей и системных администраторов, имхо, тоже вышло удобнее.

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

И потом этот же человек спрашивает «а зачем нужен сервис который бы это чинил?»

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

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

Штоа? При чём тут вообще *dm, речь о доступе к устройствам. У тебя есть способ, как это сделать без logind/consolekit, при этом не создавая для каждого сита свой .asoundrc и Xorg.conf? Выкладывай or GTFO.

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

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

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

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

Да-да, systemd это прекрасная модульная система, правда зависимость можно прописать только на все модули сразу, гг.

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

Могу поспорить, тебе мультисит тоже не нужен, как и 99% остальных пользователей

Верно. Но всё равно это не даёт тебе морального права говорить «ненужно».

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

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

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

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

Да, камень это такая модульная система из связанных частиц.

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

Вероятно, я неточно выразился. Смысл моих слов в том, что отучаемся говорить за всех (даже если на самом деле сказанное верно для 99%, это ещё не 100%).

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

форкнуть

НенужноД-ПоповЭдишн?

Хватит того, что у SystemD уже есть фактически свой анти-форк UselessD

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

Ну а почему ты уверен, что начинать чинить надо console kit?

Про чинить это твое предположение или я тебя неправильно понял. Пойнт в том, что появился logind, как полная ему замена, но при этом с совершенно ненужной зависимостью в виде systemd.

Меня, как инженера, такое решение несколько смущает. Технических предпосылок просто не вижу.

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

То есть ты допускаешь наличие встроенных костылей, потому что они нужны 1% ? Окей, вопросов больше нет.

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

встроенных костылей

Что это такое?

В любом случае, мне logind совершенно не мешает. Полагаю, что тебе тоже. В ином случае разговор нужно начинать именно с этого.

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

но при этом с совершенно ненужной зависимостью в виде systemd.

Сорцы ConsoleKit до сих пор лежат на гитхабе. Где твои патчи без совершенно ненужной зависимости от systemd?

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

Что это такое?

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

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

Сорцы ConsoleKit до сих пор лежат на гитхабе.

А я без него прекрасно жил, чистый, незамутненный tty и иксы P.

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

почему ты считаешь, что logind — это костыль?

~$ pgrep -fl logind
307 systemd-logind

И я на это никак повлиять не могу. Он просто есть, как данность, причем никакой пользы лично мне он не приносит.

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

Кстати, ты не ответил про jack. Если второй запустить нельзя, то вся идея с мультиситом не работает, а logind тотальный булшит.

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

А вред приносит? Ещё раз: дистрибутив, которым ты пользуешься, создавался не лично для тебя, а в том числе и для того 1%, которым нужен и мультисит, и fast user switching.

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