Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В systemd-journald спустя 6 лет признали проблему избыточной нагрузки на накопители

14.08.2026 23:51 (MSK)

Разработчики проекта systemd приступили к изучению и устранению давней архитектурной проблемы в компоненте "systemd-journald", приводящей к многократному завышению объёма записываемых на диск данных (write amplification) по сравнению с фактическим объёмом логов.

История тянется с марта 2020 года, когда в системе отслеживания ошибок был зарегистрирован отчёт, в котором было продемонстрировано, что генерирование около 500 КБ текстовых логов выливается в более чем 700 МБ физических операций записи на SSD. Разработчики systemd тогда наотрез отказались признавать проблему: мейнтейнеры заявили исследовательские претензии в духе "вы не понимаете, как работают файловые системы", отказались от проведения профилирования и закрыли заявку со вердиктом "not actionable". Комментарии разработчиков собрали сотни отрицательных оценок от пользователей, однако позиция проекта осталась непреклонной.

В начале 2026 года был отправлен повторный отчёт о проблеме, в ходе обсуждения которого независимый разработчик ValdikSS провёл подробное профилирование с использованием изолированных cgroup и loop-устройств, наглядно доказав механизм возникновения проблемы: из-за использования отображаемых в память файлов (mmap) и двоичных хэш-таблиц запись даже одного текстового сообщения размером 750 байт приводит к модификации отпечатков в памяти, вызывая сброс на диск полных 4-килобайтных страниц и генерацию от 50 до 70 КБ итогового ввода/вывода на уровне блочного устройства.

После вчерашнего попадания отчёта о проблеме на главную страницу Hacker News и публикации неопровержимых синтетических тестов мейнтейнеры проекта изменили риторику и начали работу над оптимизацией механизмов сброса кэша и структуры хранения индексов journald. В данном случае разработчики systemd продемонстрировали типичный для корпоративного Open Source подход: критический недочёт в инфраструктурном компоненте игнорировался годами, пока ущерб репутации проекта в сообществе не превысил издержки на его исправление.

  1. Главная ссылка к новости (https://www.reddit.com/r/Linux...)
  2. OpenNews: Выпуск системного менеджера systemd 261 и форка liberated-systemd 261
  3. OpenNews: Во Flatpak намерены сделать systemd обязательной зависимостью
  4. OpenNews: В Debian 14 намерены удалить слой для совместимости systemd со скриптами sysv-init
  5. OpenNews: Создатель systemd и мэйнтейнер VFS ушли из Microsoft и основали компанию Amutable
Автор новости: Artem S. Tashkinov
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66082-systemd
Ключевые слова: systemd
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (19) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 00:23, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Всю жизнь монтирую /var/log в tmpfs кстати.
     
     
  • 2.2, Аноним (2), 00:25, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Удачи потом в расследовании инцидентов.
     
     
  • 3.15, Аноним (15), 01:04, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Можно подумать, что ты хоть раз расследовал на гигабайтах логов.
    Есть смысл временно включать, чтобы проверить почему падает отдельная служба, но держать на постоянке и никогда туда не смотреть... ну ты сам себе буратино.
     
     
  • 4.19, Аноним (2), 01:21, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Гигабайты там и не нужны. Хватает 100 строчек выхлопа тогоже ядра, чтобы понять, почему вся система отъехала.

    К слову, актуально даже на десктопе с теме же амдешными, кривыми GPU дровами.

     
  • 3.16, Аноним (16), 01:06, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Удачи потом в расследовании инцидентов.

    Может он эти инциденты и создает? "В расследовании главное не выйти на самого себя!"

     

  • 1.3, Аноним (3), 00:35, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    И года не прошло.. А хотя не, прошло) 6!
     
     
  • 2.6, Аноним (6), 00:49, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А как пели: бинарный формат, это не партянки, всё быстро...
     
     
  • 3.12, Аноним (16), 00:59, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >  А как пели: бинарный формат, это не партянки, всё быстро...

    А оно и правда - быстро. Скажем я могу более-менее в реальном времени парсить "все сообщения от sshd". Префильтр и индексированный доступ - обеспечит сам journald. И сообщение таки - можно атомарно читануть от и до.

    В текстовом же случае...
    1) Вы вообще сами будете искать где граница между сообщениями. Мало того что это пригрузит проц - так вы еще и облажаться рискуете, когда атакующий в какой-нибудь юзернейм или что там 0x0d, 0x0a, 0x0 или что там воткнет - парсинг текста сорвется - и вы получите неполные или поддельные записи логов под контролем атакующего вообще. Что может быть использовано для обхода банов, крафтинга банов совершенно непричастным айпишникам и проч.

    2) Парсинг гигз логов - нифига не быстро. А без этого - как вы вообще получите знание "сколько запросов с этого IP было за последние 5 минут"? Вот то то и оно - трекать такие вещи с текстовиками - потребует опять же юзать бинарные бд для всяких индексов - и вообще enterprise-grade soultion. Который настолько монструозен что будет у полутора коопрв. А доморощенные админы будут сиять голым окороком - доказывая что и так сойдет!

     

  • 1.4, Аноним (4), 00:35, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А я думал это норма, что что все эти лог журналы насилуют твой ссд, чтобы потом форензик экспертам было легче копаться в твоих штанах.
     
     
  • 2.8, Аноним (-), 00:52, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >  А я думал это норма, что что все эти лог журналы насилуют твой ссд,
    > чтобы потом форензик экспертам было легче копаться в твоих штанах.

    Да не парься ты так - форенсики с твоего SSD и с якобы-in-place файлухи вынут кучу данных с твоего SSD. Потому что флеш память не умеет in place перезаписи, внезапно. А стирание медленное и крупноблочное. Так что контроллер - всяко почти наверняка CoW сделает. И если читануть NAND напрямую без его услуг по пропуску лишнего...

    Кстати, "secure" erase с явным протиранием нулями региона - тоже так не сработает. Оно протрет нолями ДРУГОЙ регион SSD. Вот явный запрос TRIM конкретного региона - еще может какую-то пользу принести. Только это блочный уровень, ФС сами по себе без явного прокостыливания такими вещами не оперируют.

     

  • 1.5, Аноним (-), 00:48, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > В данном случае разработчики systemd продемонстрировали
    > типичный для корпоративного Open Source подход

    В данном случае опеннетчики продемонстрировали типичный подход: много критиканить других и мало делать самим. А ваши текстовые логи - это прекрасно. Кроме того момента что даже просто банить околореалтаймно ботов по ним адское мучение. И либо дичайше жрет проц на парсинг гигабайтов - либо требует навороченных энтерпрайзных систем с индексами, и там вопрос амплификации, нагрузки и проч вообще - не раскрыт.

    А каких-то реально сравнимых решений получить? Что вы, не дождетесь!

     
     
  • 2.9, Аноним (9), 00:53, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так может лучше задействовать для бана ботов нормальную базу данных, а не эти ошмётки? А текстовые логи оставить только для отладки.
     
     
  • 3.13, Аноним (16), 01:03, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Так может лучше задействовать для бана ботов нормальную базу данных, а не эти ошмётки?
    > А текстовые логи оставить только для отладки.

    Ваша проблема в том что у вас в итоге только:
    - Голый зад - и нифига кроме рассказов как все это "не надо".
    - Невь...й enterprise grade которому для обслуги надо тиму фултайм админов в комплекте. Потому что ваша нормальная база данных - обслуживаемая. И надо - того кто умеет в DBA. Бесплатно работать DBA почему-то не любят.

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

     

  • 1.7, Аноним (7), 00:51, 15/08/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +1 +/
     
  • 1.10, Аноним (6), 00:55, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > типичный для корпоративного Open Source подход: критический недочёт в инфраструктурном компоненте игнорировался годами

    Вся суть архитектуры системды.

     
     
  • 2.17, Аноним (16), 01:17, 15/08/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >> типичный для корпоративного Open Source подход: критический недочёт в инфраструктурном
    >> компоненте игнорировался годами
    > Вся суть архитектуры системды.

    А альтернативы то какие? Сидеть с голым задом или огроменные энтерпрайзные монстры? Тоже мне дузовные метания мадам грицацуевой.

     

  • 1.11, Avririon (ok), 00:56, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Напоминает местного вахтёра.
     

  • 1.18, Rev (ok), 01:17, 15/08/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ждём исправления в нашем любимом Дебиане лет через 6-8.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру