BX
BX Pulse
Мониторинг сайтов 1С-Битрикс
← Все статьи
Bitrix 13 августа 2026 · 5 мин чтения

Inodes на BitrixVM кончаются раньше свободных гигабайтов

Если на BitrixVM гигабайты ещё свободны, а сайт не пишет файлы – смотрите inode (счётчик записей под файлы), кеш меню и параметры компонента, а не только рост диска.

4 просмотров

В чате клиента — «сайт не обновляется», в логах мелькает «No space left on device». Открываете df -h: десятки свободных гигабайтов. Место в байтах ещё есть — закончились inodes, счётчик записей файловой системы под файлы и каталоги. Без отдельной проверки inode usage инцидент замечают уже по падению, а не по графику.

Свободные гигабайты не отменяют «No space left»

Сравнение: свободные гигабайты против полного счётчика файлов и ошибки нет места

Число inode задаётся при создании файловой системы. Когда IUse% доходит до 100%, новые файлы и каталоги создать нельзя — даже если в df -h ещё видны свободные гигабайты. На форуме BitrixVM типичная жалоба: «свободно 20 ГБ», а записать или обновить на диск уже нельзя.

Базовая диагностика рядом с обычным диском:

Расширение диска BitrixVA по официальным урокам оперирует df -Th / df -h и ростом раздела (LVM/XFS) — это про байты. Добавить гигабайты в гипервизоре само по себе не лечит лавину миллионов мелких файлов: плотность inode на уже созданной ФС от новых ГБ не меняется.

Откуда берётся лавина мелких файлов на Битрикс

Схема лавины: кеш меню, миллионы мелких файлов и повторный рост после чистки

Частый виновник на BitrixVM — кеш меню и другие мелкие файлы под bitrix/cache / managed cache. В community отмечают, что тема тянется много лет: чистили inodes и кеш — проблема возвращалась, пока не правили параметры компонента меню.

Официальная механика из урока «Проблемы при кешировании меню»: на каждую страницу — один файл кеша на каждый тип сквозного меню; при кеше по группам множитель ещё растёт. В примере вендора папка bitrix/managed_cache/MYSQL/menu доходила примерно до 1,9 GB при четырёх типах меню и большом числе страниц.

Параметры компонента bitrix:menu, которые стоит сверить с фактическими вызовами:

Смежный класс мелких файлов — сессии PHP при session.gc_* = 0 и почтовая очередь — в диагностике FirstVDS тоже встречается рядом с bitrix/cache. Фокус этой статьи — inode и кеш меню / managed_cache, не сессии и не Redis.

Что проверить до «почистить кеш и забыть»

Чеклист до чистки кеша: счётчик файлов, жирные каталоги, параметры меню и график

Симптом простой: место в ГБ есть, а писать на диск уже нельзя. Сначала фиксируете inode, потом ищете каталоги с тысячами файлов и параметры меню — иначе очистка кеша станет ритуалом без эффекта.

  1. df -i (и при необходимости df -hTi) — есть ли свободные inode, а не только гигабайты.
  2. Settings → Scalability → Load charts (коробочный Bitrix24 / pool): в System — «Inode table usage»; в Disks — «Inode usage per persent» рядом с Disk usage. Мониторинг нужно включить в Global actions пула, иначе графики пустые. Пороги алерта в официальном уроке не заданы — смотрите usage, не выдуманный SLA.
  3. Каталоги с тысячами файлов: типично bitrix/cache, bitrix/managed_cache/…/menu; в howto FirstVDS эти пути прямо фигурируют в примерах.
  4. Фактические параметры вызовов bitrix:menu: CACHE_SELECTED_ITEMS, MENU_CACHE_USE_GROUPS, MENU_CACHE_USE_USERS.

Разрыв docs↔ops: в уроке по кешу меню вендор пишет, что огромное число файлов кеша «не проблема, если хватает места на диске», и больше акцентирует APC. На практике community BitrixVM ловит именно исчерпание inode при свободных гигабайтах. Метрика inode в Load charts уже есть — привычки смотреть только df -h часто нет.

Как снять симптомы и убрать корень

Снять давление по файлам. Настройки → System settings → Cache settings → Delete Cache Files: пункты Only outdated / All / Menu / All managed cache / HTML cache. Вручную чистить /bitrix/managed_cache/ вендор не рекомендует. Очистка снимает симптомы; без правки параметров меню файлы снова размножаются.

Уменьшить размножение ключей. Выставить "CACHE_SELECTED_ITEMS" => "N", если тип меню не переопределяется в подпапках: URL убирается из ключа, выбранный пункт считается после чтения кеша. При необходимости — пересмотреть MENU_CACHE_USE_USERS / группы с учётом ACL.

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

Держать inode в мониторинге. Рядом с Disk usage — Inode usage в Load charts и/или регулярный df -i, чтобы ловить рост до «No space left», а не после жалобы клиента.

Частые вопросы

Почему при свободных гигабайтах сайт пишет «No space left on device»?

Закончились inodes — записи файловой системы под файлы и каталоги, а не байты диска. При 100% IUse% новые файлы создать нельзя, даже если df -h ещё показывает свободное место; проверка — df -i.

Поможет ли добавить диск в гипервизоре BitrixVM?

Официальные уроки по расширению диска BitrixVA решают нехватку места в байтах (df -h / рост раздела). От лавины миллионов мелких файлов кеша это само по себе не лечит: число inode на уже созданной ФС от новых гигабайтов не растёт нужным образом.

Какие параметры меню уменьшают число файлов кеша?

В community на BitrixVM помогали "CACHE_SELECTED_ITEMS" => "N" (замедляет рост) и "MENU_CACHE_USE_USERS" => "N" (после этого падения прекращались). С версии 23.300.0 у CACHE_SELECTED_ITEMS default уже N; на старых шаблонах параметр может оставаться Y. Отключение кеша по пользователям и группам меняет учёт прав — проверять на сложных ACL.

Можно ли просто удалить каталог managed_cache вручную?

Вендор рекомендует очистку через админку: Delete Cache Files, в том числе пункт Menu / managed cache. Ручное удаление /bitrix/managed_cache/ не рекомендуется; очистка без правки параметров меню всё равно вернёт лавину файлов.

Где в Битрикс смотреть inode, а не только диск?

Settings → Scalability → Load charts: «Inode table usage» в System и «Inode usage per persent» в Disks рядом с Disk usage. Мониторинг нужно включить в Global actions пула — иначе графики пустые. Дополнительно на сервере — df -i.

Как BX Pulse помогает не пропустить inode-аварию

BX Pulse следит за доступностью и техническим состоянием проектов на 1С-Битрикс и помогает замечать сбои до обращения клиента — в том числе когда «диск ещё есть», а сайт уже не пишет файлы. Добавьте первый сайт и настройте уведомления: https://bx-monitor.ru/.

BX
Команда BX Pulse
Мониторинг и диагностика сайтов 1С-Битрикс
Попробовать BX Pulse