Очистка кэша 1С 8.3 на компьютере пользователя и на сервере: пути, ключ запуска, скрипты

· 9 мин

Содержание

Чтобы очистить локальный кэш 1С 8.3, закройте все окна программы и удалите папки с длинными именами вида a1b2c3d4-… в двух каталогах: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Список баз при этом не пропадёт. Второй способ, без ручного удаления: добавьте к базе ключ запуска /ClearCache и откройте её один раз.

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

Когда кэш 1С мешает и пора его чистить

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

🔸 Ошибки при запуске или открытии формы, которые пропадают у других пользователей той же базы. Классический пример — Ошибка формата потока. 🔸 После обновления конфигурации у одного сотрудника остались старые формы, отчёты или кнопки. 🔸 База стала открываться заметно дольше, чем раньше, хотя сервер не нагружен. 🔸 Программа падает или зависает на одном и том же действии только на одном компьютере. 🔸 На терминальном сервере заканчивается место на диске C:: у каждого пользователя свои гигабайты кэша по всем базам, с которыми он когда-либо работал.

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

Если ошибка воспроизводится у всех пользователей и на всех компьютерах, дело не в локальном кэше. Тогда смотрите на серверную часть или на саму конфигурацию.

Где лежит локальный кэш 1С и как очистить его вручную

На Windows кэш хранится в профиле пользователя, в двух местах:

КаталогЧто тамЧто удалять
%APPDATA%\1C\1cv8 (Roaming)подпапки баз и файлы настроек *.pflтолько подпапки-GUID
%LOCALAPPDATA%\1C\1cv8 (Local)подпапки баз, основной объём кэшатолько подпапки-GUID

Обе переменные раскрываются в C:\Users\<имя>\AppData\Roaming и C:\Users\<имя>\AppData\Local. Папка AppData скрытая, поэтому проще вставить путь целиком в адресную строку Проводника или в окно Win + R.

Порядок действий:

  1. Закройте все окна 1С: Предприятие, Конфигуратор, Конфигуратор с отладкой. Проверьте в Диспетчере задач, что нет процессов 1cv8.exe и 1cv8c.exe.
  2. Нажмите Win + R, введите %LOCALAPPDATA%\1C\1cv8 и нажмите Enter.
  3. Выделите все папки с именами вида 8d4c1f20-3b7e-4c9a-9e51-0f2a6b7c3d11 и удалите их.
  4. Повторите то же для %APPDATA%\1C\1cv8.
  5. Запустите базу. Первый старт будет дольше обычного: клиент заново скачает конфигурацию.

Не удаляйте папку %APPDATA%\1C\1CEStart — в ней файл ibases.v8i со списком информационных баз. Без него окно запуска окажется пустым, базы придётся добавлять заново.

Как найти папку конкретной базы

Чистить всё подряд не обязательно. Если проблема в одной базе, удалите только её папку. Имя папки совпадает с идентификатором базы в списке:

  1. Откройте %APPDATA%\1C\1CEStart\ibases.v8i в Блокноте.
  2. Найдите блок с названием базы в квадратных скобках.
  3. Строка ID= содержит GUID. Папка с таким именем в обоих каталогах и есть кэш этой базы.

Так вы не потеряете кэш остальных баз и их не придётся заново загружать.

Linux, macOS и веб-клиент

На Linux и macOS локальные данные платформы лежат в скрытом каталоге ~/.1cv8 в домашней папке пользователя. Логика та же: закрыть клиент, удалить подкаталоги баз с GUID в именах, оставить файлы списка баз.

В веб-клиенте собственного кэша платформы на диске нет — его роль играет кэш браузера. Помогает принудительное обновление страницы Ctrl + F5 или очистка кэша браузера для адреса публикации.

Ключ /ClearCache: очистка при запуске без поиска папок

Параметр командной строки /ClearCache заставляет платформу при старте сбросить закэшированные данные базы. Это удобно, когда пользователь не может или не должен лазить по AppData.

Самый простой путь — через окно запуска:

  1. В списке баз выделите нужную и нажмите Изменить.
  2. Пролистайте мастер кнопкой Далее до последней страницы с параметрами запуска.
  3. В поле Дополнительные параметры запуска впишите /ClearCache.
  4. Нажмите Готово и запустите базу.

После успешного запуска уберите ключ из этого поля. Иначе база каждый раз будет стартовать «с нуля», и выигрыш от кэша пропадёт.

Тот же ключ работает в ярлыке или батнике. Пример для серверной базы:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /S"srv1c\buh" /ClearCache

Для файловой базы вместо /S используется /F с путём к каталогу базы:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache

Номер версии в пути подставьте свой — он совпадает с именем папки в C:\Program Files\1cv8. Для Конфигуратора вместо ENTERPRISE пишут DESIGNER, ключ /ClearCache действует и там.

СпособКогда подходитМинусы
Удаление папок вручнуюразовая проблема, есть доступ к профилюлегко задеть лишнее
/ClearCache в окне запускапользователь сам, по телефонной подсказкенужно не забыть убрать ключ
/ClearCache в ярлыкеразовый «чистый» запуск конкретной базыработает только для одной базы
Скрипт по всем профилямтерминальный сервер, массовая чисткатребует прав администратора

Сброс настроек и кэша из режима Предприятия

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

В конфигурациях на БСП — Бухгалтерия 3.0, ЗУП 3.1, УТ 11 — администратор открывает раздел Администрирование → Настройки пользователей и прав. Там есть ссылка на настройки пользователей, где можно выбрать сотрудника и удалить или скопировать его настройки: внешний вид, отчёты, прочие.

Что это даёт на практике:

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

Самому пользователю сбросить расположение конкретной формы проще: в меню Ещё формы есть команда изменения формы, а в окне настройки — кнопка возврата к стандартным настройкам.

Если же и после этого ошибка не уходит, закройте программу и примените /ClearCache или удалите папку базы. Настройки пользователя хранятся в информационной базе, а не в локальном кэше, поэтому одно на другое не влияет.

Серверный кэш 1С: что чистить в srvinfo и когда это опасно

В клиент-серверном варианте у сервера 1С тоже есть свой кэш: сеансовые данные рабочих процессов. Они лежат в каталоге кластера внутри srvinfo. Типичные пути по умолчанию:

  • Windows: C:\Program Files\1cv8\srvinfo\reg_1541
  • Linux: /home/usr1cv8/.1cv8/1C/1cv8/reg_1541

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

Внутри нас интересуют папки snccntx… — сеансовые данные. Они разрастаются, иногда повреждаются после аварийного выключения сервера. Тогда пользователи видят ошибки при входе во все базы сразу, а рабочие процессы падают.

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

Порядок:

  1. Предупредите пользователей и дождитесь, пока они выйдут.
  2. Остановите службу Агент сервера 1С:Предприятия 8.3 в services.msc (на Linux — через systemctl для службы srv1cv8…).
  3. Убедитесь, что процессов ragent, rmngr, rphost больше нет.
  4. Удалите в reg_1541 папки, имена которых начинаются на snccntx.
  5. Запустите службу и проверьте вход в базы.

Не трогайте файл 1CV8Clst.lst — это реестр кластера со списком информационных баз и настроек. Его удаление равносильно потере всей конфигурации кластера. Файл 1cv8wsrv.lst в корне srvinfo тоже оставьте на месте. Папки с GUID баз внутри reg_1541 хранят, например, индекс полнотекстового поиска — удалять их ради «чистки кэша» не нужно.

Перед удалением скопируйте весь srvinfo в сторону. Если что-то пойдёт не так, вы вернёте папку как была.

Скрипты для автоматической очистки кэша 1С

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

bat-файл для текущего пользователя

@echo off
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.exe" >nul && goto busy
tasklist /FI "IMAGENAME eq 1cv8.exe" | find /I "1cv8.exe" >nul && goto busy

for /d %%D in ("%APPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"
echo Кэш 1С очищен.
exit /b 0

:busy
echo Закройте 1С и запустите скрипт снова.
exit /b 1

Маска *-*-*-*-* выбирает только папки с дефисами, то есть GUID. Если в консоли кракозябры вместо русских букв, сохраните файл в кодировке OEM 866 или замените сообщения на латиницу.

PowerShell для всех профилей терминального сервера

Скрипт запускают от имени администратора, когда пользователи вышли из системы:

$guid = '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$'
Get-ChildItem 'C:\Users' -Directory | ForEach-Object {
    $roots = @(
        Join-Path $_.FullName 'AppData\Roaming\1C\1cv8'
        Join-Path $_.FullName 'AppData\Local\1C\1cv8'
    )
    foreach ($r in $roots) {
        if (Test-Path $r) {
            Get-ChildItem $r -Directory |
                Where-Object { $_.Name -match $guid } |
                Remove-Item -Recurse -Force -ErrorAction SilentlyContinue
        }
    }
}

Папки пользователей, у которых сейчас открыта 1С, удалятся не полностью — файлы заняты. Поэтому запускайте скрипт ночью или перед перезагрузкой сервера.

Как встроить в регламент:

  • 🕑 Планировщик заданий Windows — задача раз в месяц, ночью, от имени администратора.
  • 👤 Сценарий входа через групповые политики — bat-файл выполняется при входе пользователя, до запуска 1С.
  • 🔄 После обновления конфигурации — разовый прогон, чтобы ни у кого не осталась старая копия.

Для серверного кэша автоматизация тоже возможна: остановка службы командой net stop, удаление snccntx*, запуск net start. Точное имя службы посмотрите командой sc query или в свойствах службы — оно зависит от версии и способа установки. Такой скрипт ставят только в окно обслуживания, когда в базах никто не работает .

Перед очисткой кэша 1С
Выполнено: 0 / 5

Частые ошибки при очистке кэша

❌ Удаляют всю папку 1C в AppData. Вместе с кэшем уходят список баз и общие настройки клиента. Потом пользователь звонит: «пропали все базы».

❌ Чистят кэш при открытой программе. Часть файлов занята, удаляется не всё, а оставшиеся обрывки дают новые ошибки. Сначала закрыть, потом чистить.

❌ Оставляют /ClearCache навсегда. База каждый раз стартует медленно, и кажется, что «1С тормозит».

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

❌ На сервере удаляют содержимое reg_1541 целиком. Кластер теряет реестр баз, и восстанавливать его приходится из резервной копии.

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

Пропадут ли данные бухгалтерии после очистки кэша?
Нет. Документы, справочники и проводки хранятся в информационной базе. Кэш — только копия служебных данных на компьютере пользователя.
Сбросятся ли пароли и сохранённые настройки отчётов?
Пароль к базе и настройки отчётов лежат в самой базе, они останутся. Список баз и общие параметры клиента тоже не пострадают, если удалять только папки с GUID.
Почему после очистки 1С долго запускается?
Клиент заново скачивает конфигурацию с сервера. Это разовая задержка: со второго запуска скорость вернётся к обычной.
Сколько места может занимать кэш 1С?
На одну крупную базу — от сотен мегабайт до гигабайта и больше. На терминальном сервере суммарно по всем пользователям бывает несколько десятков гигабайт.
Нужно ли чистить кэш для файловой базы?
Да, локальный кэш создаётся и для файловых баз. Папки ищут там же, в AppData, по GUID из файла ibases.v8i.