metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-10-07 04:35 pm

Ненависть к systemd как психическая эпидемия

Напомните мне или дайте ссылку - я уже спрашивал, чего все на systemd так ополчились?
Выглядит, как средневековая эпидемия одержимости дьяволом, все псят, чего псят - непонятно.
Ну, не считая вот этого: http://metaclass.livejournal.com/889197.html?thread=20959341#t20959341 тут, несмотря на теорию заговора, хоть какое-то обоснование имеется.

[identity profile] tzirechnoy.livejournal.com 2014-10-08 07:04 pm (UTC)(link)
Мы либо как-то выкручиваемся, либо правим initscript. Впрочем, при применении верхней головы -- выкручиваемся обычно успешно. А как Вы поступаете, когда ручка не предусмотрена в systemd?

Кстати, переменные окружэния в /etc/default/servicename можно выставить любые, и написать в нём start-stop-daemon () { /sbin/start-stop-daemon --iosched ... "$@" } проблем не составляет.
develop7: (dero)

[personal profile] develop7 2014-10-08 09:01 pm (UTC)(link)
правим initscript
и молимся, чтобы maintainer пакета не поправил скрипт и не пришлось бы решать конфликты. been there.
А как Вы поступаете, когда ручка не предусмотрена в systemd?
-1) в настоящее время это скорее «если» — ручек, если вы ходили по ссылкам, там более чем дофига, а некоторые далеко не сразу понятно, как реализовывать батниками
0) это какая интересно?
1) пишем скрипт и перекрываем у юнита ExecStart
написать в нём start-stop-daemon () { /sbin/start-stop-daemon --iosched ... "$@" } проблем не составляет
грязный хак. хорошо хоть это только в одном месте можно сделать. если вообще можно: разве /etc/default/servicename есть у всех сервисов?

[identity profile] avnik.livejournal.com 2014-10-09 12:46 am (UTC)(link)
ну если у мантейнера хватило ума скопипастить из примера -- то оно пытается читать /etc/defaults/$name если он есть

[identity profile] tzirechnoy.livejournal.com 2014-10-09 07:52 am (UTC)(link)
>и молимся, чтобы maintainer пакета не поправил скрипт и не пришлось бы решать конфликты. been there.

Не знаю, я без проблем решаю и гораздо более серьёзные конфликты. Тем паче, это гораздо проще, чем решать конфликты в сорцах systemd.

>ручек, если вы ходили по ссылкам, там более чем дофига,

А у Вас нет ощущения, что "дофига" и "на все случаи жызни" -- это совершэнно ортогональные понятия?

>хорошо хоть это только в одном месте можно
> сделать. если вообще можно: разве
^gt; /etc/default/servicename есть у всех сервисов?

Нет, не у всех. Сейчас посмотрел -- почти у десятка именно сервисов из полутора сотен моей системы -- не используется. У части при этом есть какой-то другой развесистый конфиг, у части -- /lib/lsb/init-functions.

Впрочем, это банально не является проблемой. В смысле -- ни разу в жызни мне не пришлось пожалеть, что это так.
develop7: (dero)

[personal profile] develop7 2014-10-09 08:49 am (UTC)(link)
я без проблем решаю и гораздо более серьёзные конфликты
нет конфликтов — нет проблем. смекаете?
это гораздо проще, чем решать конфликты в сорцах systemd
расскажите подробнее, как именно вы пришли к необходимости разрешать конфликты в сорцах systemd?
"дофига" и "на все случаи жызни" -- это совершэнно ортогональные понятия
и что, из этого следует, будто systemd ненужен/следует_запретить, потому что его не хватит на все-все-все случаи жизни, так?
У части при этом есть какой-то другой развесистый конфиг, у части -- /lib/lsb/init-functions.
Ага. То есть одни и те же люди ссылками на XKCD предполагают наличие каких-то уже существующих стандартов, а в соседней ветке демонстрируют, что стандартами они де-факто не являются. Выглядит как двоемыслие.
ни разу в жызни мне не пришлось пожалеть, что это так
мне неоднократно приходилось. мержить инитскрипты, когда можно не мержить — унижение.

[identity profile] tzirechnoy.livejournal.com 2014-10-09 10:09 am (UTC)(link)
> нет проблем. смекаете?

Ну да. Старая байка. Используйте только сертифицырованную Microsoft (R) Windows (tm), и у вас не будет никаких проблем. Я её 20 лет слышу. Особенно смешно слышать, что проблем не будет именно и только если использовать последнюю версию -- поскольку в предпоследней проблемы почему-то всё-таки были.

>расскажите подробнее, как именно вы пришли к
> необходимости разрешать конфликты в сорцах systemd?

Я их пока что успешно избегаю. Просто не ставлю нигде ничего с systemd -- вот и нет никаких конфликтов в сорцах.
И шуточки вида
        f = fopen("/etc/X11/xorg.conf.d/00-keyboard.conf", "re");
         if (!f) {
                 if (errno == ENOENT) {
 #ifdef TARGET_FEDORA
                         f = fopen("/etc/X11/xorg.conf.d/00-system-setup-keyboard.conf", "re");


говорят о том, что это единственный метод, который гарантирует успех.

>а в соседней ветке демонстрируют, что стандартами они де-факто не являются.

Да, неумение понимать прочитанное для systemd-фанбоев, конечно врождённое.
В комиксе и было написано, что со стандартами проблема: единого устоявшэгося -- нет.
И там ещё ржали над вашым вариантом решэния.
develop7: (dero)

[personal profile] develop7 2014-10-09 10:44 am (UTC)(link)
Используйте только сертифицырованную Microsoft (R) Windows (tm)
уточните пжлст, вот это сейчас Imago или Pugna было? я склонаюсь к Imago, но вам должно быть виднее
Просто не ставлю нигде ничего с systemd
а, так вы теоретик.
итого
* systemd вы не использовали
* systemd вы не хотите и не будете ни изучать, ни использовать
* поэтому ваше представление о возможностях systemd носит обрывочный характер и, как следствие, матчастью вы не владеете
* однако убеждены, что systemd не нужен никому вообще
* и аргументируете это устаревшими обрывками кода localed (который мало того, что не является частью PID 1, так ещё и вообще отключается нафиг) и собственными домыслами, основанными на устройстве /etc/rc*
Я ничего не упустил?
там ещё ржали над вашым вариантом решэния
этот вариант существенно лучше того, что предлагают sysvinit c upstart