LINUX.ORG.RU
ФорумTalks

За что на самом деле ненавидят systemd и Co

 


1

3

Рекомендуется к ознакомлению: http://habrahabr.ru/post/176571/

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

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

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

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

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

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

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

И ему пофигу, что там под капотом, SysV или systemd. Ему работать надо. СРОЧНО!!!111один-один.

Ну так и какая разница тогда? ЧОрный экран и с SysV может случиться.

Текстовый файл я в _любой_ системе прочитаю, в отличие от…

Ну так пиши в syslog, в чем проблема? А journalctl скоро найти везде можно будет:)

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

Да не надо, не учи. Видно, что ты уже старый, и тебе сложно воспринимать хоть что-то новое.

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

В итоге одновременно с dm запускается куча совершенно ненужных ему демонов, и всё это дико тупит.

12309? У меня даже на нетбуке с hdd такое не проявлялось. Это как-то подозрительно. Я с системде наоборот повыкидывал кучу всякой муры при старте..

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

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

а почему, кстати? Леннарт не осилил man 7 regex?

systemctl start, stop, restart не умеет возвращать статус завершения операции, а вместо этого предлагает читать лог.

Это да

ППЦ. Всё вручную?

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

а почему, кстати? Леннарт не осилил man 7 regex?

Руки не доходят видать. Столько всего еще надо переписать :D

ППЦ. Всё вручную?

Алиасы же

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

В первом случае была сумма багов

Может быть. Но я с таким не встречался. При чем у меня лог около 5Gb был, после установки параметра постепенно до 50MB ужался.

Второй случай раздражает

А вот это мне совсем не понятно.

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

12309? У меня даже на нетбуке с hdd такое не проявлялось. Это как-то подозрительно. Я с системде наоборот повыкидывал кучу всякой муры при старте..

Ы. 12309 — всему ответ? Инициализация компа, тем более, ноутбука с медленным винтом, — это io-bound задача. Под «дико тупит» я имею ввиду не «вот прям ваще всё тормозит», а относительную величину изменения сокорости запуска. Если в одном случае от запуска PID1 до появления строчки Login у нас было, условно, 7 секунд, а в другом случае стало 13 — это вполне можно описать как «дико тупит».

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

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

Ну так и какая разница тогда? ЧОрный экран и с SysV может случиться.

разница принципиальная: в SysV всё запускалось последовательно, а если параллельно - то очевидно, админ знал, что делает, и эти демоны друг от друга _никак_ не зависят. В systemd с точностью до наоборот.

Ну так пиши в syslog, в чем проблема? А journalctl скоро найти везде можно будет

мечтай. С чего ты взял, что RH это действительно в RHEL всунет? Я такой гарантии дать не могу, не ванга. Ну а без RHEL твой systemd никому нафиг не нужен, что очевидно.

Да не надо, не учи. Видно, что ты уже старый, и тебе сложно воспринимать хоть что-то новое.

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

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

Если в одном случае от запуска PID1 до появления строчки Login у нас было, условно, 7 секунд, а в другом случае стало 13 — это вполне можно описать как «дико тупит».

Это именно за счет параллельной загрузки? Кстати попробуй еще readahead. Его в апстриме подкрутили

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

Вероятно, но в случае нормального железа некоторый профит на лицо

а админить её намного сложнее

Пока что может быть, в перспективе - сомнительно

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

Руки не доходят видать.

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

Алиасы же

поясни.

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

systemd полностью сохраняет поддержку стандартных LSB-инитскриптов. Ничего не ломается.

А почему все ломятся писать юниты, или как их там ?

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

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

ага. Могу добавить, что грузится за секунду-другую может и Slackware, без всяких ваших systemd. SSD да, быстро умеет находить рандомные данные, в отличие от HDD.

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

мечтай. С чего ты взял, что RH это действительно в RHEL всунет?

Да, и в SLE12 тоже будет systemd.

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

С чего ты взял, что RH это действительно в RHEL всунет?

Наверное с того, что journald форвардит все сообщения в /run/systemd/journal/syslog.

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

Да с тобой все ясно: я не знаю, что такое systemd, как им пользоваться не знаю и вообще не хочу знать.

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

но в случае нормального железа некоторый профит на лицо

слака грузится(голая, без ничего) за 1730mS, а твоя федора от Леннарта аж за 910mS? И что? Если воткнуть роутер, который 5000mS тупит, то то на то и выйдет. А если-бы я не втыкал этот роутер, этого поста вы-бы не увидели.

Ну про сервера вообще…

Пока что может быть, в перспективе - сомнительно

см выше мои посты про перспективу. Ты так и не рассказал, как мы будем запиливать фичи, которые нужны только на _одном_ нашем сервере?

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

пойми, там нечего переписывать, это часть glibc

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

поясни.

 > srvst fail 
fail.service
   Loaded: loaded (/home/vasily/.config/systemd/user/fail.service; static)
   Active: failed (Result: exit-code) since Пн 2013-04-15 09:41:06 EEST; 7ms ago
  Process: 17763 ExecStart=/bin/false (code=exited, status=1/FAILURE)

апр 15 09:41:06 BlackICE systemd[1913]: Started fail.service.
апр 15 09:41:06 BlackICE systemd[1913]: fail.service: main process exited, code=exited, status=1/FAILURE
апр 15 09:41:06 BlackICE systemd[1913]: Unit fail.service entered failed state
> grep -h srvst ~/.aliases.d/* 
alias srvstat="systemctl --user status"
srvst(){ systemctl --user start "$1" && systemctl --user status "$1" }
vasily_pupkin ★★★★★
()
Ответ на: комментарий от Deleted

http://pastebin.com/2KWY7zx6 (/etc/init.d/mysql из дебиана, обычный LSB-совместимый скрипт, рассчитанный на sysvinit)
http://pastebin.com/MjM37CtM (/lib/systemd/system/mysqld.service из федоры, конфиг для systemd)
Суди сам.

Ну и ? systemd-шный нифига ничего не делает, тупо запускает /usr/bin/mysqld_safe --basedir=/usr. Хочешь сказать, что всю остальную логику дебиановского скрипта systemd реализует волшебным образом ? Ну ладно, наличие процесса он проверит, а всё остальное ?

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

С чего ты взял, что RH это действительно в RHEL всунет?

Наверное с того, что journald форвардит все сообщения в /run/systemd/journal/syslog.

э… Подожди, а как же /var/log/ ?

Да с тобой все ясно: я не знаю, что такое systemd, как им пользоваться не знаю и вообще не хочу знать.

дык рассказать про преимущества мне никто не хочет. Я вижу одни недостатки.

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

Ты так и не рассказал, как мы будем запиливать фичи, которые нужны только на _одном_ нашем сервере?

Ничего удивительного. Ты же не сказал про какого рода «фичи» речь

слака грузится(голая, без ничего) за 1730mS, а твоя федора от Леннарта аж за 910mS?

Мне все равно. Речь зашла про обратную сторону параллельной загрузки, я откомментил.

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

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

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

sanity_checks? Покажи пруф их нужности.

Ну убери их и получи ровно ту же одну строчку. Если так хочешь. В общем, пример мимо тазика.

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

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

а о чём ты говоришь-то, если регекспы УЖЕ есть? Почему их Леннарт не использует? Не осилил, или религия?

srvst(){ systemctl --user start «$1» && systemctl --user status «$1» }

Это называется - «костыли».

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

Ты так и не рассказал, как мы будем запиливать фичи, которые нужны только на _одном_ нашем сервере?

Ничего удивительного. Ты же не сказал про какого рода «фичи» речь

уникального рода. Которые никому и нигде не нужны, вот кроме этого конкретного сервера. Ты таких никогда не делал?

Мне все равно. Речь зашла про обратную сторону параллельной загрузки, я откомментил.

ага. «Не быстро? Медленно? За то параллельно, а значит быстрее. Ты что, дурак, что-ли? Да у тебя не может быть медленнее!!»

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

Если нужны какие-то проверки перед запуском сервиса, то для этого есть опция ExecStartPre=

И шариться по разным файлам ?

AS ★★★★★
()

За что на самом деле ненавидят systemd

за /mnt если память меня не подвела

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

Вообще-то от «наглядных скриптов» уходят все

Неправда ваша, в CRUX и Slackware как в самых простых для пользователя дистрибутивах скрипты вполне себе остаются.

Впрочем, как и в *BSD.

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

уникального рода. Которые никому и нигде не нужны, вот кроме этого конкретного сервера. Ты таких никогда не делал?

Я не знаю про какие «уникальные» костыли на «сервере» может идти речь, но уникальных для моих лаптов их вагон:

> find /etc/systemd/system ~/.config/systemd/user -type f | wc -l 
175

В том числе несколько костылей, которые работают напрямик через дубас

ага. «Не быстро? Медленно? За то параллельно, а значит быстрее. Ты что, дурак, что-ли? Да у тебя не может быть медленнее!!»

Парсер фейлед

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

а о чём ты говоришь-то, если регекспы УЖЕ есть? Почему их Леннарт не использует? Не осилил, или религия?

/me рыдает

Это называется - «костыли».

Да, волшебная сила юниксвея. Никак от него не уйти :(

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

А зачем ее обходить?

А зачем нужна непонятная хрень, от которой зависит работа ОС вообще ? Плюсов, пока, не видно, а проблем уже вагон и маленькая тележка. Да ещё замахиваются на syslog и т.п.

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

Возьми да почитай документацию.

бложик с «мифами» про «скорость»? Уже читал. Ответ выше.

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

Я не знаю про какие «уникальные» костыли на «сервере» может идти речь, но уникальных для моих лаптов их вагон

кто-то там про «простоту» вещал, и про то, что Леннарт всё предусмотрел, и мне осталось только в конфиге написать: нужная_мне_фича=on? Не? Придётся опять Over9000 скриптов писать, только теперь уже вклячивать их в systemd?

ага. «Не быстро? Медленно? За то параллельно, а значит быстрее. Ты что, дурак, что-ли? Да у тебя не может быть медленнее!!»

Парсер фейлед

дык у мну давно уже фейлед, после вашего бложика.

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

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

Ну и хрен с ними. Перезапустил, и всё. А вот когда у тебя SQL-сервер из-за этой поделки поттеринга навернётся, или почтовик какой-нибудь, думаю, ты по-другому заговоришь. А всёго-то пару минут экономии на загрузке раз в год выгадали, ага-да ?

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

а о чём ты говоришь-то, если регекспы УЖЕ есть? Почему их Леннарт не использует? Не осилил, или религия?

/me рыдает

таки неосилил?

Это называется - «костыли».

Да, волшебная сила юниксвея. Никак от него не уйти :(

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

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

В OpenSUSE с пульсой, вроде, все тихо и спокойно. Глюки бывают, хотя это могут быть мои кривые руки.

По барабану, что он делает с десктопом. Но он замахнулся на mission critical сейчас.

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

А вот когда у тебя SQL-сервер из-за этой поделки линуса навернётся, или почтовик какой-нибудь, думаю, ты по-другому заговоришь

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

Не вижу разницы. И с чего бы ему наворачваться? С того что у tailgunner'а _пульс_ (пользовательский процесс) доводил до полного зависания?

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

«Оно» - это что?

«Оно» - systemd упало.

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

кто-то там про «простоту» вещал, и про то, что Леннарт всё предусмотрел, и мне осталось только в конфиге написать: нужная_мне_фича=on? Не? Придётся опять Over9000 скриптов писать, только теперь уже вклячивать их в systemd?

Ты уже определись наконец, тебе нужны «костыли» или не нужны?

vasily_pupkin ★★★★★
()

Суть в том, что через полгода оно станет не нужным.
Как не нужны теперь fstab, хorg.conf, menu.conf, hal, baselayout1 и т.п.


Всё преходящее, ничего вечного...

Зачем что-то разбирать, если через полгода всё будет по-другому.

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

Не вижу разницы. И с чего бы ему наворачваться?

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

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

и излишняя для init'а функциональность?

У меня да. И, считаю, за иное мнение надо отрывать, что под руку подвернётся.

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

ложится в основу функционирования ОС

Я бы не стал льстить этому проекту таким образом

код большой сложности и неряшливо написанный

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

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

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

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

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

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

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

Какбы, от запускаемых systemd сервисов тоже зависит работа ОС вообще.

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

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

ложится в основу функционирования ОС

Я бы не стал льстить этому проекту таким образом

Ну а как, если оно и стартом системы управляет, и отслеживает состояние системы потом ? Кстати, в работающей системе перезапуск systemd чем грозить ? Тем же самым, что и прибивание init ?

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

Ты уже определись наконец, тебе нужны «костыли» или не нужны?

нужны. Итак во дворе мочало:

  • способ №1: прикручиваем к systemd какой-то NIH скрипт. За что боролись?
  • способ №2: форкаем systemd для одного компьютера.
drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.