К статье
Практический материал

Администрирование · 10 мин

Как почистить кэш 1С на сервере

Как почистить кэш 1С на сервере: где лежат папки srvinfo и reg_1541, как удалить кэш без остановки работы, клиентский кэш, типичные ошибки и FAQ.

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

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

Ниже разобраны оба сценария: очистка кэша сервера 1С (папка srvinfo) и очистка клиентского кэша на компьютерах пользователей, поскольку на практике их часто путают и чистят не тот.

Где хранится кэш сервера 1С

Основной каталог служебных данных сервера называется srvinfo. Его расположение зависит от операционной системы и от того, как установлен сервер 1С. На Windows по умолчанию это C:\Program Files\1cv8\srvinfo (для 64-разрядной версии) или C:\Program Files (x86)\1cv8\srvinfo. Если агент сервера запущен от имени конкретного пользователя, каталог может находиться в профиле этой учётной записи: C:\Users\USR1CV8\AppData\Local\1C\1cv8.

На Linux типичный путь — /opt/1cv8/x86_64/<версия>/ или домашняя директория пользователя, под которым работает агент, например /home/usr1cv8/.1cv8/1C/1cv8/. Точный путь проще всего уточнить в параметрах запуска службы агента: там указывается ключ -d с каталогом кластера.

Внутри srvinfo находятся подпапки вида reg_1541, reg_2541 и т.д. — номер соответствует порту кластера. Именно в этих папках лежит кэш: подкаталоги с длинными именами-идентификаторами (GUID) для каждой информационной базы.

Что можно удалять, а что — нельзя

Ключевой файл в папке reg_1541 — 1CV8Clst.lst. Это реестр информационных баз кластера: в нём записано, какие базы зарегистрированы на сервере, их параметры подключения к СУБД, настройки блокировок. Если удалить этот файл, все базы «пропадут» из консоли кластера, и их придётся регистрировать заново вручную. Данные в самих базах при этом не пострадают, но восстановление списка — лишняя работа, особенно если баз много.

Удалять можно и нужно: подпапки с именами-GUID (кэш метаданных и скомпилированных модулей каждой базы), папку snccntx (контексты сеансов), временные файлы. Перед удалением разумно сделать копию всей папки reg_1541 — это займёт немного места, но позволит откатиться, если что-то пойдёт не так.

Пошаговая очистка кэша на Windows-сервере

Стандартная процедура занимает несколько минут, но требует кратковременной остановки сервера 1С, поэтому выполняйте её в нерабочее время или предупредите пользователей. Все активные сеансы будут разорваны.

Порядок действий
  1. 1
    Предупредите пользователей и убедитесь, что нет активных сеансов (консоль кластера → Сеансы).
  2. 2
    Откройте services.msc и остановите службу «Агент сервера 1С:Предприятия».
  3. 3
    Перейдите в каталог srvinfo, откройте папку reg_1541 (или с вашим портом).
  4. 4
    Сделайте копию файла 1CV8Clst.lst.
  5. 5
    Удалите все подпапки с именами-GUID и папку snccntx, оставив 1CV8Clst.lst.
  6. 6
    Запустите службу агента сервера.
  7. 7
    Проверьте запуск базы: сервер заново создаст кэш, первый вход может занять дольше обычного.

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

Очистка кэша на Linux-сервере

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

bash
sudo systemctl stop srv1cv8
cd /home/usr1cv8/.1cv8/1C/1cv8/reg_1541
cp 1CV8Clst.lst /backup/1CV8Clst.lst
find . -mindepth 1 -maxdepth 1 ! -name '1CV8Clst.lst' -exec rm -rf {} +
sudo systemctl start srv1cv8

Имя службы может отличаться (например, srv1cv83 или включать номер версии платформы) — проверьте через systemctl list-units | grep 1c. Убедитесь также, что удаляете файлы от имени пользователя с достаточными правами и что после удаления владелец оставшихся файлов не изменился, иначе агент может не стартовать.

Клиентский кэш: когда сервер ни при чём

Значительная часть «глюков после обновления» связана не с серверным, а с клиентским кэшем — он хранится на компьютере каждого пользователя. Признаки: ошибка возникает только у одного или нескольких пользователей, а у остальных та же база работает нормально. В этом случае чистить сервер бессмысленно.

Клиентский кэш находится в профиле пользователя: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Внутри — папки с GUID баз. Самый аккуратный способ очистки — удалить базу из списка в стартовом окне 1С и добавить её заново: при этом платформа пересоздаёт кэш для этой базы. Альтернатива — вручную удалить соответствующую папку GUID при закрытой 1С.

Какой кэш чистить

Серверный (srvinfo)

Проблема у всех пользователей сразу: база не запускается, ошибки метаданных после обновления. Требует остановки службы сервера.

Клиентский (на ПК пользователя)

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

Оба

После нештатного обновления или переноса базы, когда источник проблемы неясен. Начинайте с клиентского — он дешевле по последствиям.

Как понять, что проблема именно в кэше

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

Если же проблема в медленных запросах, блокировках, ошибках СУБД или нехватке места на диске — очистка кэша ничего не даст. Перед чисткой полезно проверить технологический журнал сервера и журнал регистрации: они подскажут, где реально возникает сбой.

Маршрут решения

Как выбрать действие

Ошибка у одного пользователя, у остальных всё работаетОчистите клиентский кэш на его компьютере — сервер не трогайте
База не открывается у всех после обновления конфигурацииОстановите агент сервера и очистите reg_1541 с сохранением 1CV8Clst.lst
Ошибки СУБД, нехватка места, таймауты запросовКэш ни при чём — диагностируйте СУБД и дисковую подсистему
Чистка кэша не помоглаВыполните тестирование и исправление базы, проверьте технологический журнал

Типичные ошибки при очистке

Типичные ошибки
01
Удаление кэша при работающем агенте сервера — файлы заняты, часть удалится, часть нет, кэш останется в несогласованном состоянии.
02
Удаление 1CV8Clst.lst — базы исчезают из консоли кластера, приходится регистрировать их заново вручную.
03
Чистка серверного кэша, когда проблема на клиенте — потерянное время и ненужный простой всей организации.
04
Удаление всей папки srvinfo без копии — вместе с кэшем теряются настройки кластера и журналы, нужные для диагностики.
05
Отсутствие проверки результата — после чистки нужно зайти в базу и убедиться, что ошибка ушла, а не считать задачу выполненной по факту удаления файлов.

Проверка результата и откат

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

Контрольные точки

Как проверить результат

Служба агента сервера
Норма

Служба в состоянии «Работает», в srvinfo заново появились папки GUID

Тревожный признак

Служба не стартует или падает — смотрите журнал событий ОС

Список баз в консоли кластера
Норма

Все базы на месте, параметры подключения сохранились

Тревожный признак

Список пуст — был удалён 1CV8Clst.lst, регистрируйте базы заново

Запуск проблемной базы
Норма

База открывается, исходная ошибка не воспроизводится

Тревожный признак

Ошибка осталась — проблема не в кэше, нужна дальнейшая диагностика

Если что-то пошло не так, откат прост: остановите службу, верните сохранённую копию папки reg_1541 (или хотя бы файл 1CV8Clst.lst) и запустите службу снова. Именно поэтому предварительная копия — обязательный шаг, а не формальность.

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

Удалится ли база данных при очистке кэша сервера?

Нет. Кэш — это временные служебные файлы, сами данные хранятся в СУБД (MS SQL, PostgreSQL и т.д.) или в файле 1Cv8.1CD для файлового режима. Удаление содержимого reg_1541 не затрагивает данные, но затрагивает реестр баз кластера, поэтому файл 1CV8Clst.lst нужно сохранить.

Можно ли почистить кэш без остановки сервера?

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

Как часто нужно чистить кэш 1С?

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

Почему после чистки кэша база стала открываться медленнее?

Это ожидаемо: сервер заново компилирует модули и строит кэш метаданных при первом обращении к каждой базе. Замедление касается только первых сеансов после чистки. Если медленная работа сохраняется и дальше — причина не в кэше, нужно анализировать производительность сервера и СУБД.

Что делать, если после удаления кэша базы пропали из консоли кластера?

Скорее всего, был удалён файл 1CV8Clst.lst. Восстановите его из копии, которую нужно было сделать перед чисткой, и перезапустите службу. Если копии нет — зарегистрируйте базы вручную: в консоли кластера создайте новую информационную базу, указав те же имя, сервер СУБД и имя базы данных. Сами данные при этом не пострадают.

Итог

Что важно запомнить

Серверный кэш 1С лежит в srvinfo/reg_1541; чистится только при остановленной службе агента; файл 1CV8Clst.lst удалять нельзя — это реестр баз кластера. Если проблема у одного пользователя — чистите клиентский кэш на его компьютере, сервер не трогайте. Перед удалением делайте копию, после — проверяйте результат входом в базу.