LINUX.ORG.RU

Systemd 194, теперь с HTTP-сервером и генератором QR-кодов

 


3

3

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

В частности:

  • опция HandleSleepKey в logind.conf была разбита на HandleSuspendKey и HandleHibernateKey, старая опция более не доступна;
  • почти полностью удалена утилита multi-seat-x, минимальная обертка оставлена до тех пор, пока DM не начнут поддерживать новую логику перечисления графических устройств Xorg;
  • nspawn теперь создает символическую ссылку /etc/localtime в окружении контейнера;
  • исправлено поведение при отсутствии /etc/vconsole.conf, теперь в этом случае не будет загружаться никакой шрифт;
  • journald теперь пишет в лог максимальный размер, который файлы журнала могут занимать на диске;
  • опция параметра journalctl -n теперь необязательна и по умолчанию равна 10;
  • journalctl -f теперь реагирует на изменение размеров терминала и разбивает строки соответственно;
  • новая опция --cursor в journalctl позволяет выводить записи начиная с определенного места журнала;
  • добавлена поддержка journalctl для bash-completion.

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

Оказалось, что обе функции связаны с journald — собственной заменой syslog-демона, как известно, входящей в состав systemd. Среди прочего, он отличается тем, что ведет логи в бинарном виде вместо текстового.

Зависимость от qrencode объясняется реализацией функции Forward Secure Sealing, journalctl из состава systemd использует qrencode для вывода QR-кодов в текстовой консоли.

А поскольку логи хранятся бинарно, для работы с ними нужны дополнительные программы. Зависимость от libmicrohttpd вызвана тем, что в состав systemd теперь входит встроенный http-сервер journald-gateway, умеющий отдавать логи в текстовом и json-формате. Его основное предназначение автор видит в синхронизации журнала по сети.

Так выглядит http-сервер journald-gateway в действии

>>> Леннарт про FSS и QR-код

anonymous

Проверено: JB ()
Последнее исправление: Silent (всего исправлений: 3)
Ответ на: комментарий от Deleted

Ответ - journalctl на другой машине.

А если на голову больной дистр был только на одной (по заказу установленной) машине?

sergv
()

Неплохое сравнение с бложека Леннарта:

OpenRC (0.9.3): sysvinit + 300 files, ~30k lines, 3.3k posix sh, ~12k C

Upstart (1.5): 285 files, ~185k lines, ~97k C

Debian: sysvinit + 120 files, 5.8k lines

systemd (v44+): dbus + glib + 900 files, 224k lines, 125k C

sysvinit: 560kB, 75 files, ~15k lines

D-Bus: 11MB, ~500 files. 300k lines, 120k C

glib: 72MB, ~2500 files, ~1.7M lines, ~430k C

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

Астралирую что ты про бинарый лог journald (eventlog'а на линаксе пока нет :D). Значит — собрать journalc под цыгвин :D

vasily_pupkin ★★★★★
()

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

sergv
()

Блин? если так пойдет линукс превратится в какое-то чудище-франкенштейна. Линукс становится раздутым, тяжелым и глючным (Если не уже). Это плохо. Добавляют всякую лишнюю сущность. Доктор, мы его теряем!

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

Может, ну его этот фанатизм, и на оффтопик, как белые люди?

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

Это отдельная простая утилита. Все взлетит и соберется

Ну ладно, соберется.

Но зачем?

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

Теряется главная прелесть UNIX-журнала - универсальность. Сделанное один раз работает везде. А уж утилиты для просмотра простых текстовых файлов я видел буквально во всех ОС и даже недо-ОС для коммутаторо-кофеварок.

Получается вторая инкарнация форточного «журнала», который никто не читает без самой крайней необходимости. Потому-что НЕУДОБНО и ИЗБЫТОЧНО.

sergv
()
Ответ на: ещё больше жести! от anonymous

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

+1

Они такие. Что с них взять? Собака лает, караван идёт.

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

Эвент лог вычитавай ёпт

а что, так можно? И все действия выполняемы с жруналд можно один в один перетащить на евентлог? И скриптик написать что бы он одинаково работал и там и там можно? Или мне из-за каких то мудаков надо ещё лишнюю информацию запоминать? Вот в линухе журналцтл с такими параметрами пускай, вот в винде пауршелл с такими смдлетами, вот во фряхе такой скриптик на баше юзай. А ещё и в саму прогу засадить кучу однотипного кода только что бы он под разными ОС по разному логгирование вёл.

Заепись решение. У вас там там всё так через жэппу? Может вы летом штаны через голову надеваете, зимой через ноги, а в остальное время в руках носите? Правильно нахер эта унификация и простота нужна.

anonymous
()

Судя по всему 99% населения лора школота. Не знает что такое http, бинарный формат, системные утилиты, сжатие и т.д. Речь ведут не о запиленых обновлениях а об авторе, чего и следовало ожидать.

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

Но зачем?

Что бы этим удобно было пользоваться на десктопе.

Теряется главная прелесть UNIX-журнала - универсальность. Сделанное один раз работает везде. А уж утилиты для просмотра простых текстовых файлов я видел буквально во всех ОС и даже недо-ОС для коммутаторо-кофеварок.

Если это действительно нужно, то есть форвард в средства генерирующие формат для кофеварок. Если нет, см. п. 1

Получается вторая инкарнация форточного «журнала», который никто не читает без самой крайней необходимости. Потому-что НЕУДОБНО и ИЗБЫТОЧНО.

В вендовом журнале была и другая проблема - туда никто не писал. Собственно по этому его никто и не привыкли читать - нет удобных средств.

А этим пользоваться действительно удобно, если не брать во внимание специальные случаи

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

У меня интернетов нету

как будто у тех кто установит утилиту сразу появляется сает с логами лог-вован.сис пиздец приехали, про локалхост ты наверное в своей деревне не слышал, да?

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

В вендовом журнале была и другая проблема - туда никто не писал. Собственно по этому его никто и не привыкли читать - нет удобных средств.

Есть подозрение, что этот журнал ждет таже участь. Т.к. акромя аналога /var/log/messages в него вряд-ли что-то полезное кто-то писать будет. Ну, гномеры и фридесктопщиками еще писать будут - фюрер велит и уровень потребления упорина у них соответствует. ;-)

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

А этим пользоваться действительно удобно, если не брать во внимание специальные случаи

А специальные - это какие?

Распарсить журнал iptables, sendmail, popa3d при хорошей нагрузке - это уже специальные или нет? С учетом, что там по два прогона делать приходится - сначала искать конечное событие, на которое тредуется реакция, а уж потом - выдирать связанные с ним.

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

Будь последовательным. На десктопе логи в 99.999% случаев не нужны, а когда нужны это скорее всего пара строчек из dmesg. Отсюда рекомендация: воспринимай все аргументы касательно logrotate и прочего применительно к серверу и не пиши через сообщение «на десктопе всё нормально».

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

Судя по всему, хреновый из тебя аналитик. Попробуй ещё раз.

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

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

Ну, вообще то что бы попасть в поцтерлог надо: или писать в syslog, или писать в stdout, или писать в stderr, или писать в поттерлог. Так что такая беда не грозит. Более того, наконец весь дерьмовыхлоп от сервисов в одном месте.

Распарсить журнал iptables, sendmail, popa3d при хорошей нагрузке - это уже специальные или нет? С учетом, что там по два прогона делать приходится - сначала искать конечное событие, на которое тредуется реакция, а уж потом - выдирать связанные с ним.

Да, это специальные. Поттерлог удобно использовать для анализа в общем и целом. Там попросту нет средств для гибкой ротации логов (на данный момент, но я думаю и не появятся), без которых работать с логами нагруженных сетевых сервисов попросту не возможно

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

Будь последовательным. На десктопе логи в 99.999% случаев не нужны

Лично мне нужны. Это ж линакс, тут постоянно что-то работает через жопу :]

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

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

Ну, вообще то что бы попасть в поцтерлог надо: или писать в syslog, или писать в stdout, или писать в stderr, или писать в поттерлог. Так что такая беда не грозит. Более того, наконец весь дерьмовыхлоп от сервисов в одном месте.

Грозит. fprintf будут делать в дескриптор открытого файла, а не во что-то еще. Для унификации.

Поттерлог удобно использовать для анализа в общем и целом. Там попросту нет средств для гибкой ротации логов (на данный момент, но я думаю и не появятся), без которых работать с логами нагруженных сетевых сервисов попросту не возможно

Вот в этом и суть! Использовать поттерлог МОЖНО и НУЖНО только там, где /var/log и на tmpfs хорошо проживет!

А на серверах ему делать нечего.

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

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

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

Грозит. fprintf будут делать в дескриптор открытого файла, а не во что-то еще. Для унификации.

Для унификации есть openlog/syslog. Маловероятно, что кто-то будет унифицировать дальше :D

А на серверах ему делать нечего.

Будто бы с этим кто-то спорит?

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

О, элита с полпроцента компов голос подаёт. Продолжай дальше щёчки надувать. Пока такие как ты ахинеей занимаются и лезут чинить то что не сломано - микрософты SMB3 запилили и пихают его везде вместо NFS( включая СХД ).

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

Думаешь у них таки бывает время, когда они не готовы дать по морде?

anonymous
()

я бы согласился на бинарные логи, если это бинарное будет ascii >: ]

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

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

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

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

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

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

тебе идиоту что не скажи у тебя на всё найдётся своё

если

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

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

Читая обычные логи ты все равно используешь shell и cat/less. Ну будешь использовать другую программу для чтения логов вместо них. Какая разница?

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

Те, кому не жалко, уже давно на винде.

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

Читая обычные логи ты все равно используешь shell и cat/less. Ну будешь использовать другую программу для чтения логов вместо них. Какая разница?

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

vitalif ★★★★★
()

Кто виноват - в общем понятно :) А что конкретно делать тем, кто не хочет в будущем в тетрис до загрузки играть?

Правильно ли я понимаю, что основная проблема в том, что исходники udev слили с исходниками systemd?

Т. е. если сделать форк udevа и поддерживать его по мере появления вкусностей в основном udevе, то в общем-то ментейнерам дистрибутивов будет не так уж и сложно тянуть и systemd и sysinitv/openrc и т. д.

Или эта гадость ещё куда-то проникла или планирует проникнуть в ближайшее время?

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

Вот в этом и суть! Использовать поттерлог МОЖНО и НУЖНО только там, где /var/log и на tmpfs хорошо проживет!

А на серверах ему делать нечего.

Thx Cap!

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

микрософты SMB3 запилили и пихают его везде вместо NFS( включая СХД )

Всем по^безразлично. Те, кому нужен линукс, выберут линукс.

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

Или эта гадость ещё куда-то проникла или планирует проникнуть в ближайшее время?

В гном - уже.

В остальные ДЕ - в планах, т.к. фридесктопщики Леню Горшкова любят.

Они вообще всякую гадость используют в последнее время без санитарной экспертизы - то HAL будем/не будем, то ConsoleKit будем/не будем...

sergv
()

Как же меня радует

Как же меня радует, что решения принимает не серая ни в чем не разбирающаяся масса, а люди оценивающие все детали решения и видящие его преимущества.

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

x86_64 ★★★
()

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

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

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

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

А на серверах ему делать нечего.

Thx Cap!

Всегда пожалуйста!

Может ты объяснишь, вот если оно на серверах нафиг не нужно, то зачем ему защита от модификации журналов с криптографией? Для испуга или по принципу кота, которому заняться нечем?

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

С каких это пор разработчики OpenSUSE, Mageia и Arch работают в RedHat?! Чем больше ты несёшь подобную чушь, тем быстрее превращаешься из просто клуна в глупого клоуна.

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

Вообще складывается впечатление, что RedHat очень хочет в рынке ОС для всяких планшетов и прочего ширпотреба поучаствовать. Там как раз актуально всё то, что Поттеринг делает. Все эти времена загрузки, QR коды. А логи на таких устройствах «с целью экономии...» действительно лучше иметь бинарные. Всё равно они для галочки. А шифрование и защита от модификаций лога действий пользователя очень хорошо укладывается в политику всяких *Store (хотя здесь конечно немного за уши притянуто :) )

Не понятно только, будет это везде проталкиваться или всё-таки опомнятся и RHEL-7 будет для мобильных устройств и для промышленного применения разный.

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