LINUX.ORG.RU

Ubuntu продолжает интеграцию компонентов systemd

 


0

3

На прошедшем на этой неделе онлайн-UDS обсуждалась замена ConsoleKit на systemd-logind.

Оба компонента предназначены для отслеживания пользовательских сессий и автоматического предоставления процессам пользователей доступа к периферийным устройствам, связанным с рабочими местами, на которых они запущены. Разработка ConsoleKit была фактически заброшена еще до появления systemd - в результате он представляет собой заглушку, способную отслеживать лишь одну сессию. Systemd-logind уже имеет всю заявленную функциональность, позволяя настраивать мультисит-системы с распределением периферийных устройств между местами на уровне udev.

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

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

★★

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

Да, разумеется.

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

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

Что характерно вы реально считаете что я должен убить кучу времени на ваше любимое говно? :D

А что ты по-твоему делаешь постя однообразную чушь на ЛОРе? :-D

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

А что ты по-твоему делаешь постя однообразную чушь на ЛОРе? :-D

Однообразную чушь в виде ссылок на рекламу systemd постишь ты.

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

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

Фейспалм. Да вы просто полны лозунгов в стиле «за все хорошее против всего плохого»

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

Вот представьте у вас полсотни серверов на нескольких дистрибутивах, и например вот десяток багов и прочих фиксов. Что будем держать по гиту и билдэнвайроменту на каждый мелкий баг в системе инициализации? :D При этом если вы будете держать свои копии системд то у вас это все нужно будет делать так, что бы не нарушились там зависимости пакетов - а ведь это основа системы, от нее каждая собака зависит :D

Короче я понимаю чо гентушники не против ситсемд, у них вся система такая, кастомная :D

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

А что ты по-твоему делаешь постя однообразную чушь на ЛОРе? :-D

Что тейлганнер сказал. «Однообразную чушь в виде ссылок на рекламу systemd постишь ты.»

Кстати у фанатиков ситсемд в соседнем треде уже начался бугурт от Марка. Сейчас подождем пока марк начнет форсить свои доработки к systemd и бугурт начнется и у тебя тоже :D

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

kernel> То есть разодрать системд реально на модули - это улучшить ситуацию.

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

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

true_admin> По-моему, это истерия. Для меня главный критерий это работоспособность.

SysV Init просто работает. Зачем менять на systemd? OpenRC просто работает. Зачем велосипедить systemd? Systemd - монолитный и негибкий кусок говна, проталкивающий бинаризацию, из-за которой те же логи надо смотреть специальной программой (все помнят, что такое редактор реестра венды?) - нафига он нужен?

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

true_admin> В чём гибкость скриптов состоит?

В модифицируемости и переносимости. С теми же скриптами уже делали параллельную загрузку на SysV Init.

true_admin> Он внутри не одним большим C-файлом как многие себе здесь это представляют.

Да мы в курсе. Но ведь тот же антивирус Бабушкина тоже не один .bat файл запускает, а плодит кучу. Вот тут аналогично.

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

Да. Есть практические задачи. И часть из них (в основном в embedded, ибо экономия ресурсов и кастомизация) этот самый systemd делает нерешаемыми.

true_admin> Или нужна мифическая модульность ради модульности?

То бишь, ты признаешь systemd монолитным куском говна? Ок. Но ведь дело тут какое. Модульность в обсуждаемом случае позволяет взаимозаменять компоненты, что резко расширяет круг решаемых задач и повышает стабильность. Вот у кого-то тут уже systemd тёк так сильно, что сотни мегабайт отожрал. Это нормально?

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

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

а кому можно?

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

то он автоматически получает доступ ко всем устройствам, назначенным этому рабочему месту.

нетпук с двумя мониторами и с двумя клавами. Как делить звуковую карту?

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

хватит давать ссылку на этот RTFM, он на 97% состоит из чуши подобной:

1. linux стоит на 95% компах в мире

2. amd самые быстрые бесшумные и эффективные процессоры

3. бог создал мир

4. 2+2=1 в системе вычетов по модулю 3
qnikst ★★★★★
()
Ответ на: комментарий от Lennart

ты пропустил 2/3 предложения, в которых была основная смысловая нагрузка, итоге оно потеряло смысл, давай ты снова прочитаешь, попытаешься понять _все_ предложение и попробовать задать свой вопрос снова, ок?

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

Мне уже надоело постить инит скрипты из опенсузе в каждой теме про системде в ответ на этот аргумент ))

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

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

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

qnikst ★★★★★
()

Меня лично systemd прет хотя бы вот этим:

alexv@vm85:~$ cat /etc/systemd/system/sshproxy.service 
[Unit]
Description=SSH proxy tunnel
After=syslog.target network.target auditd.service

[Service]
ExecStart=/usr/bin/ssh -N -i /etc/sshproxy/vm6.dsa -L 3128:10.0.3.211:8080 alexv@vm6.nn.internal

[Install]
WantedBy=multi-user.target

После бесконечного секса с инит-скриптами это - просто адский прыжок вперед. Чего стоит хотя бы то, что АПИ инитскриптов сильно расходится между разными дистрибутивами. start-stop-daemon в Дебиане ведет себя сильно по-другому, чем daemon в Шляпе и ЦентОС. Да, sysv-init - очень остроумная и гениально простая система, но индустрия в связи с ростом требует улучшения управляемости и предсказуемости. SMF (а на что еще ссылаться в дискуссиях про systemd?) был первым шагом в этом направлении, и он тоже стопроцентно специфичен для одной системы, непереносим и монолитен. Но при этом надежен как весь морской флот.

В то время, как остальные *здят по форумам о том какая модульная и текстовая должна быть система инициализации, Леннарт сел и написал что-то, что решает очень много проблем, которые раньше решались всякими костылями типа spawn-fcgi. Может и не так идеально написал как хотелось, но софт редко бывает идеальным с первого захода, а systemd очень и очень неплохо сделан для софтины такого масштаба, такого возраста и области применения. Upstart же является ярким примером, что задача - не из простых, а разработчики Каноникла способны только плагины к Компизу ваять, но думают они при этом все равно задницей.

И Тейлганнер может сколько угодно трясти тут своим ЧСВ, но systemd очень скоро станет решением с коммерческой поддержкой от Шляпы (не в курсе, честно говоря, подхватит ли его Unbreakable, думаю, что да), а самопальные костыли Тейлганнера так и останутся самопальными костылями Тейлганнера.

alex_the_v ★★★
()
Ответ на: комментарий от alex_the_v
# cat /etc/init.d/sshproxy
NAME=${SVCNAME#*.}
pidfile="/var/run/sshproxy.${NAME}.pid"
command="/usr/bin/ssh"
command_args="-N -i ${PKEY} -L ${PHOST} ${PUSER}"
start_stop_daemon_args="--background --make-pidfile"

depend() {
        use net
}

# cat /etc/conf.d/sshproxy

PKEY_vm6="/etc/sshproxy/vm6.dsa "
PHOST_vm6="3128:10.0.3.211:8080"
PUSER_vm6="alexv@vm6.nn.internal"

# ln -s /etc/init.d/sshproxy /etc/init.d/sshproxy_vm6

хотя на самом деле для таких local.d придумали, пишешь туда sshproxy_vm6.start с командой и радуешься жизни.

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

У меня ни бубунта-сервер, ни ЦентОС, ни Демьян такого синтаксиса, к сожалению, не поддерживают. Если класть в local.d, то остается вопрос только как потом рулить этим мнэээ «демоном» из local.d. И даже если вопросы эти отбросить, то твой пример все равно неубедителен. Ну да фиг с ним, это была только иллюстрация.

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

Или вот еще проблема. Скрипт mysqld_safe триггерит запуск mysqld и сразу завершается. Init при этом продолжает выполнение скриптов ранлевела и некоторые сервисы (например jabberd2), которые зависят от mysqld отваливаются из-за недоступности базы. В Дебиане это решено костылем в инитскрипте, там 10 секунд ожидается mysqld_status. В FreeBSD, будь она благословенна, эта проблема не решена вообще никак. Мне интересно как решение такой проблемы будет выглядеть в той системе инициализации, для которой ты написал этот чудесный, даже не знаю скрипт это или конфиг.

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

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

Вот вам надо срочно поправить что-то в скриптах инициализации что бы «заставить эту хрень работать»

Можно пример, пажалста

Вот представьте у вас полсотни серверов на нескольких дистрибутивах, и например вот десяток багов и прочих фиксов. Что будем держать по гиту и билдэнвайроменту на каждый мелкий баг в системе инициализации? :D При этом если вы будете держать свои копии системд то у вас это все нужно будет делать так, что бы не нарушились там зависимости пакетов - а ведь это основа системы, от нее каждая собака зависит :D

Какой-то ночной бред.

Короче я понимаю чо гентушники не против ситсемд, у них вся система такая, кастомная :D

Да, гента всегда готова для костылей )

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

<petrosyan>По изображению с вебкамеры, очевидно же.</petrosyan>

anonymous
()
Ответ на: комментарий от alex_the_v
        
        /usr/bin/safe_mysqld >/dev/null 2>&1 &
        eend $?

как заставить safe_mysqld свалиться, чтобы проверить есть ли эта проблема? Как эта хм.. проблема решена в systemd?

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

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

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

ты пропустил 2/3 предложения, в которых была основная смысловая нагрузка, итоге оно потеряло смысл,

смирись. Это у него такой стиль общения.

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

У меня ни бубунта-сервер, ни ЦентОС, ни Демьян такого синтаксиса, к сожалению, не поддерживают.

debian так точно имеет openrc в репах значит в бубунту сервер можно поставить (насколько я понимаю), за центось сомневаюсь, но зависимости там минимальные и поставить явно можно. Хотя openrc скрипты не совсем совместимы с обычными sysv5 в частности заголовками обозначающими зависимости.

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

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

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

Скрипт mysqld_safe триггерит запуск mysqld и сразу завершается. Init при этом продолжает выполнение скриптов ранлевела и некоторые сервисы (например jabberd2), которые зависят от mysqld отваливаются из-за недоступности базы. В Дебиане это решено костылем в инитскрипте, там 10 секунд ожидается mysqld_status.

по уму ждать 10 секунд должен jabberd, это ведь ЕМУ нужна СУБД.

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

толльк такие проблемы никак НЕ относятся к самой системе инициализации. Если jabberd хочет СУБД - пусть ждёт, пока она подымется. При чём тут init?

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

Тому кто всунул флешку, это же очевидно

вот я и думаю, через какой такой libastral твой systemd угадывает, кто всунул флешку? Или таки на флешке QR код? И её надо к вебкамере поднести?

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

И Тейлганнер может сколько угодно трясти тут своим ЧСВ

О чем ты, родной?

самопальные костыли Тейлганнера так и останутся самопальными костылями Тейлганнера.

Я тебя впервые вижу, но уже беспокоюсь за тебя. Где ты видел мои костыли?

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

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

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

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

как заставить safe_mysqld свалиться

Не, я видимо не совсем ясно выразился. Его не надо валить, он просто запускает процесс поднятия базы и завершается. В результате инициализация продолжается, а база еще недоступна. Systemd предоставляет апи, пользуясь которым демон может сообщить когда он готов к работе, а админ при конфигурации юнита может указать надо ли ждать уведомления о готовности. Если демон этого не поддерживает, то есть PostStart, где можно подождать выхода на связь.

Я нигде ничего не говорил про openrc. Наверняка он не хуже, чем systemd, я просто не в теме. Я говорил, что инит требует замены, и systemd видится вполне подходящим кандидатом. Плюс, я лично считаю, что система инициализации должна быть не пускалкой скриптов, а документированным и функциональным инструментом, которым удобно пользоваться

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

ждать 10 секунд должен jabberd, это ведь ЕМУ нужна СУБД.

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

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

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

где я хочу иметь доступ к флешке воткнутой в другой комп

Если флешка была примонтирована с соответствующим uid=,gid= то права уже не поменяются, так что никак

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

О чем ты, родной?

Ты в одной дискуссии успел двоих чуваков ни за что ни про что заклеймить дебилами и админами локалхостов. При этом твоя аргументация вызывает массу вопросов. Отсюда и мысли.

Где ты видел мои костыли?

Лично не видел, но ты их сам упомянул пару страниц назад, типа ты настроил контейнеров на lxc и костылями подпер.

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

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

Чтобы я одновременно обозвал человека и дебилом, и админом локалхоста? Ссылку или не было.

Где ты видел мои костыли?

Лично не видел, но ты их сам упомянул пару страниц назад, типа ты настроил контейнеров на lxc и костылями подпер.

Я настроил? Бгг. Если ты всё читаешь так же внимательно, ты ходячий аргумент против systemd.

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

Особенно удобно и модульно было использование симлинков.

А в systemd не используется куча говносимлинков? Ага.

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

как я понял, safe_mysqld выходит со соотв статусом, опенрц смотрит этот статус и выставляет соотв статус результату выполнения запуска сервиса. Соотв зависимые сервисы не начнут запуск раньше времени, и не начнут вообще в случае фейла. Есть pre/post действия, причем уже очень давно.

Наверняка он не хуже, чем systemd, я просто не в теме.

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

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

Зачем менять на systemd?

По идее, нужна только одна годная система инициализации. Но как-то не сложилось. Для меня systemd это как минимум возможность из коробки запускать сервисы и целые образы в cgroups. Мне это удобно. И в остальном оно почти всегда «просто работает».

из-за которой те же логи надо смотреть специальной программой

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

все помнят, что такое редактор реестра венды?

и оно, к сожалению, уже есть, gconf называется. Но не надо путать логи и конфиги.

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

В модифицируемости и переносимости.

Переносимости... куда?

С теми же скриптами уже делали параллельную загрузку на SysV Init.

Я рад за них. Но как-то sysv init я давно не видел. Оно вымирает, если уже не вымерло.

Вот тут аналогично.

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

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

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

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

сначала меня спрашиваете чего мне не хватает в sysVinit/upstart/etc, теперь идёт речь о расширении круга задач.. Ну скажи какую задачу надо решить, подумаем на сколько годен systemd и остальные системы. Без конкретики это бесполезный трёп.

Вот у кого-то тут уже systemd тёк так сильно, что сотни мегабайт отожрал.

Если это про меня то это была ошибка в профиле сups. Это косяк, беспорно. Но покажите мне софт без багов?

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

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

alex_the_v ★★★
()

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

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

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

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

все systemd ругают и при этом все тащят идеи из него к себе

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

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