LINUX.ORG.RU

Systemd за и против (тихо мирно и спокойно)

 


1

3

Собственно я инертен, почитал про этот Systemd немного так вроде годная вещь при определённом подходе, или я не прав? Единственный дурдом как я понял это снос привычных скриптов запуска и тп., или я не прав? Вообщем объективно разжевать можете, желательно с реальными примерами, а не с обсираниями восхищениями с потолка.

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

А что, для бинарных логов нет утилитки, cat'ящих их на экран текстом? И ее выхлоп нельзя направить в те же tail | grep | whatever?

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

Но например вендовые админы не могут ни изменить поведение, ни заменить, ни удалить систему запуска служб Windows.

Это одна из причин, по которой я не использую Windows в работе. И тянуть оттуда худшее в Linux не стоит.

shell-script ★★★★★
()
Ответ на: комментарий от Alve

Но например вендовые админы не могут ни изменить поведение, ни заменить, ни удалить систему запуска служб Windows.

Абсолютно в точку! Это - одно из коренных главных Линукса. Это, одна из тех причин, по которым я (да и многие другие тоже, я уверен) выбираю Линукс даже дома. Уходя от возможности выбора мы перенимаем худшие стороны Винды!

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

В реальном мире демоны таки падают.

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

shell-script ★★★★★
()
Ответ на: комментарий от madgnu

Ok.

Тогда два последних аргемента:
1. Каковы достоинства бинарных логов перед тектовыми? На десктопе.
2. Как мне быть вот с этими тремя кейсами Systemd за и против (тихо мирно и спокойно) (комментарий)

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

Это значит, что их надо бездумно поднимать

Ааа, тогда понятно. Это чисто виндовый подход: неработает - выйди и зайди опять. Нормальные админы предпочитают разбираться в причинах.

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

В Сусе 12.1 можно выпилить. И в 12.2 вроде можно будет.

Твои слова до Богу в уши.

А можно не выпиливать, а жать F5 на экране GRUB и грузиться с SysVinit.

Мы не путаем вывод процесса загрузки и системой инициализации?

Kroz ★★★★★
()
Ответ на: комментарий от shell-script

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

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

1. Мне лично все равно, я не агитирую за бинарные логи. Просто я вижу, что есть паритет нужных мне фич между сислогом и journald.
2.1. chroot + journalctl -o export, потом читаем на своей машине.
2.2. Ну замени в своем скрипте grep something <logfile> на journalctl | grep something
2.3. Не знаю.

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

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

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

В ДЦ вырубили питание

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

какие-то не понятные ошибки

Ну ты понял. Как можно что-то объяснить, если никакой входной информации нет?

полечилось через disable/enable сервиса

Возможно, симлинк пропал из-за неотмонтированной ФС. Но это на уровне догадок, вряд ли так было. Такое объяснение не имеет никакого отношения к systemd — может пропасть любой файл, который писали.

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

Это не ко мне - это к maxcom-у.

Я его цитировал как подтверждение тезиса о том, что оно сырое и криворуко-деланое. (Пока? Или совсем?)

Кстати, не поленился сходить к ЛП на страничку и прочитать, что сервисы по-умолчанию без авторестарта.

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

1. Ты спрашивал, почему авторы демона должны предусматривать перезапуск, а не система инициализации. 2. Потому что это бесполезно. В случае, если бы этим занимался systemd, при перезапуске сервис недоступен. Задача не выполнена.

shell-script ★★★★★
()
Ответ на: комментарий от thesis

Никак не мешает. Но и не помогает в работе. Именно поэтому такая фияа бесполезна, о чём я с самого начала и написал.

shell-script ★★★★★
()
Ответ на: комментарий от sergv

Кстати, не поленился сходить к ЛП на страничку и прочитать, что сервисы по-умолчанию без авторестарта.

Да, по умолчанию так, но сделать авторестарт — это одна строчка в юните.

gentoo_root ★★★★★
()
Ответ на: комментарий от shell-script

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

thesis ★★★★★
()

Если systemd станет действительно стандартом в критическом количестве дистрибутивов, то технические аспекты со временем совместно допилятся, а совсем вопиющие косяки (см. бесконечное число тредов на эту тему) имени Поттеринга выпилятся.

Но если все не поддержат, то получится второй NetworkManager. Вроде всё красиво, но пользоваться всерьёз невозможно. И как следствие, или появится форк или перебесятся.

ksicom
()
Ответ на: комментарий от shell-script

Ну давай про апач, раз он тебе близок. Есть хост с дебианом, на котором раз в неделю-две сегфолтится апач. Я, допустим, говорю systemd его поднимать после падения. Что в этом плохого?

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

Кстати, не поленился сходить к ЛП на страничку и прочитать, что сервисы по-умолчанию без авторестарта.

Да, по умолчанию так, но сделать авторестарт — это одна строчка в юните.

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

переполнение памяти -->падение демона -->очистка памяти -->systemd говорит (программа х упала надо её поднять ) не вру говорит sysdtemd так

0000000 5025 4644 312d 362e 250d e3e2 d3cf 0a0d
0000010 3731 3533 2039 2030 626f 0d6a 3c3c 4c2f
0000020 6e69 6165 6972 657a 2064 2f31 204c 3635
0000030 3232 3236 2f35 204f 3731 3633 2f35 2045
0000040 3931 3831 3336 4e2f 3320 3830 542f 3520
0000050 3732 3335 3737 482f 5b20 3120 3835 3234
0000060 3420 3836 5d30 3e3e 650d 646e 626f 0d6a
0000070 2020 0a0d 7278 6665 0a0d 3731 3533 2039
0000080 3637 0d31 300a 3030 3030 3030 3130 2036
0000090 3030 3030 2030 0d6e 300a 3030 3030 3032
00000a0 3235 2032 3030 3030 2030 0d6e 300a 3030
00000b0 3030 3032 3536 2038 3030 3030 2030 0d6e
00000c0 300a 3030 3030 3032 3638 2036 3030 3030
00000d0 2030 0d6e 300a 3030 3030 3032 3938 2037
00000e0 3030 3030 2030 0d6e 300a 3030 3030 3032
00000f0 3539 2031 3030 3030 2030 0d6e 300a 3030
0000100 3030 3032 3939 2030 3030 3030 2030 0d6e
0000110 300a 3030 3030 3132 3332 2034 3030 3030
0000120 2030 0d6e 300a 3030 3030 3132 3433 2037

ПАРАЛЕЛЬНО поднимая программу x которая снова переполняет память и снова падает и всё по кругу вертится.

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

Венду видел?
1) Укажите действие после первого падения
2) Укажите действие после второго падения
3) Укажите действие после последующих падений

Круто, да?

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

Не в апаче дело.

Ничего плохого. Заметь, я не говорил, что systemd это прям уж так сильно плохо. Просто это бесполезно. Если он там раз в неделю сегфолтится, всё равно надо искать причину сегфолта, потому что в очередной раз он может упасть и вообще больше не подняться(при старте сегфолт, скажем). А зачастую так и бывает, потому что просто так от нечего делать демоны не падают. И если с апачем это по сути не сильно страшно, то вот с каким-нибудь postgres'ом можно в итоге данные потерять. А с постфиксом/сендмейлом/экзимом нужное письмо пропустить. И т.д.

Повторюсь, это не вредно и не плохо. Это просто бесполезно. Ошибку так или иначе придётся править.

То же самое, что и с бинарными логами. Может Поттерингу они удобные, мне на формат плевать до тех пор, пока я могу сделать с ними всё то же, что с обычными(грепнуть, мониторить и т.д.).

И у меня закономерный вопрос. Зачем мне перестраивать и ломать отлаженную и проверенную систему(sysvinit на серверах, openrc на десктопе), если замена(systemd) ничего лучшего не предлагает? И даже больше, ломает(у меня везде /usr отдельный и в ближайшее время переустанавливать или переливать на другие винты подконтрольные мне системы я не собираюсь).

shell-script ★★★★★
()
Ответ на: комментарий от thesis

в том то и дело хотят как в винде эта программа упала покажет бинарный лог и спроси отправить ли его разработчикам ДУРДОМ

В обычной сетуации 1 прога упала (вот бл,,, говорю я) 2 трассирую прогу, смотрю *.log 3 ага ясно после обращения к *.conf переполняется память 4 смотрю .conf, а там limit=2000Gb вместо limit=2000Mb 5 исправляю трассирую,всё нормально, пишу багрепорт.Все довольны.

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

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

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

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

Kroz ★★★★★
()
Ответ на: комментарий от shell-script

Просто это бесполезно.

Я внятно описал случай, когда перезапуск именно что полезен. Еще раз: перезапуск не мешает в твоем случае и помогает в моем. Перезапуск нужен.

Ошибку так или иначе придётся править.

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

у меня везде /usr отдельный

А почему и зачем?

thesis ★★★★★
()

Не вижу явных минусов. Плюсы уже перечислили.

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

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

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

Какие фичи ты считаешь полезными?

2.1. chroot + journalctl -o export, потом читаем на своей машине.

А если на другой машине другая архитектура, нет systemd и формат запускаемых файлов не совместим?

2.2. Ну замени в своем скрипте grep something <logfile> на journalctl | grep something

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

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

Когда прога работает как-то не так, важно снять snapshot ситуации.

Демон два дня назад грохнулся с сегфолтом. Опиши, как снять «снапшот ситуации».

Пожалуйста, не бери пример самописного демона имени Васи Пупкина

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

Systemd за и против (тихо мирно и спокойно) (комментарий)

И факультативно: Systemd за и против (тихо мирно и спокойно) (комментарий)

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

Тебе Поттеринг запретил трассировать программу и читать логи?
Или ты из тех, кто считает, что бинарный лог это такой write-only file, из которого принципиально невозможно извлечь информацию?

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

Если у тебя в initrd уже лежит systemd, то там должны быть и сопутствующие утилиты

А вот фиг там systemctl - есть, journalctl - нету.

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

Вот именно так ты сможешь ответить, когда я задам вопрос в воздух «а зачем вообще нужен /usr на отдельном разделе». В таком случае это будет уместно.

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

Какие фичи ты считаешь полезными?

Возможность прочитать лог определенного сервиса/все логи/распарсить по нужному критерию.

А если на другой машине другая архитектура, нет systemd и формат запускаемых файлов не совместим?

Если на другой машине нет systemd, откуда там взялся его лог?

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

С чего вдруг каждая-то? Лог один, он у systemd. Выхлоп всех прог в нем. Зачем какие-то еще костыли, я не представляю.

madgnu ★★★★★
()
Ответ на: комментарий от no-dashi

systemctl status показывает лог. И опции типа -f там тоже есть.

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

Демон два дня назад грохнулся с сегфолтом. Опиши, как снять «снапшот ситуации».

Поясняю. Демон пишет лог. Он по каким-то причинам растет быстро (допустим, DDoS) и вскоре забивает весь диск. Демон не расчитан на такую ошибку и при очередной попытке записать лог сегфлотится. При перезапуске он не дописывает лог, а начинает писать заново. Админ приходит - все пучком, почему был сегфолт - хз.
Если бы сервер не поднимался, было бы достаточно легко отследить проблему.
Первое что пришло в голову.

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

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

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

Возможность прочитать лог определенного сервиса/все логи/распарсить по нужному критерию.

Это и сейчас можно сделать.

Если на другой машине нет systemd, откуда там взялся его лог?

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

С чего вдруг каждая-то? Лог один, он у systemd. Выхлоп всех прог в нем. Зачем какие-то еще костыли, я не представляю.

1. Загляни в каталог /var/log и посмотри сколько там логов.
2. В syslog как правило поступают логи только с ядра и системных служб. Другие утилиты как правило пишут свои логи, и не дай Бог им быть бинарными со своими костылями!

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

В багзилле федоры есть багрепорты, в которых поцеринг говорит «*dm должен быть на VT 1, это дизайн»

Ну в Федоре DM и правда запускается на первом VT, у них это действительно дизайн такой (хз зачем), это не Поттеринг придумал (надеюсь). Так что (в контексте места) ответ не криминальный. Или он там глобально отвечал, дескать так везде должно быть, а у кого нет — те идут лесом?

kss ★★★★★
()

«Тихо мирно и спокойно» говоришь ;)

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

Бинарные логи никаким образом не прибиты гвоздями к systemd.

Пока не появится сторонняя смотрелка — прибиты.

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

Это и сейчас можно сделать.

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

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

ЯННП. Упавшая машина → еще одна машина → машина, на которой смотрим лог? Тогда от промежуточной машины вообще ничего не зависит.

В syslog как правило поступают логи только с ядра и системных служб. Другие утилиты как правило пишут свои логи, и не дай Бог им быть бинарными со своими костылями!

Дак пусть пишут. С чего им вдруг стать бинарными?

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

у них это действительно дизайн такой (хз зачем)

Для плавного перехода от plymouth к dm и для уменьшения числа переключения видеорежимов.

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

Может, пришло время сделать вдоль?

Я ничего не понял.

Ну как бы паника, ужас, истерика, «systemd в моём уютненьком арчике», мы все умрём, зачем мучиться, вдоль.

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