Чистим кэш 1С:Предприятия 8.3 вручную, ключом /ClearCache и скриптом
Содержание
Чтобы очистить кэш 1С, закройте программу и удалите папки с длинными именами вида a1b2c3d4-... из %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Второй способ без Проводника: добавьте ключ /ClearCache в дополнительные параметры запуска базы и один раз откройте её. Сами данные базы при этом не страдают: стирается только локальная копия конфигурации и служебные файлы на компьютере пользователя.
Инструкция общая для платформы 8.3 и любых конфигураций: Бухгалтерии, ЗУП, УТ, ERP. Разница только в том, где работает пользователь: на своём компьютере, на терминальном сервере или в браузере.
Что хранится в кэше 1С и когда его пора чистить
При первом запуске базы платформа скачивает к себе описание конфигурации, формы, макеты и картинки. Дальше она берёт их с диска, а не из базы. Так 1С открывается быстрее, особенно в клиент-серверном варианте и по медленной сети.
Проблемы начинаются, когда локальная копия перестаёт совпадать с тем, что лежит в базе. Типичные поводы для очистки:
- 🔄 после обновления конфигурации у части пользователей старые формы, а у других уже новые;
- 🧩 форма открывается с пустыми полями, «съехавшими» элементами или без новых реквизитов;
- 🐢 база стала заметно дольше стартовать, хотя на других компьютерах всё в порядке;
- ❌ ошибки при открытии формы или отчёта появляются только на одном рабочем месте;
- 💾 профиль пользователя распух: на терминальном сервере кэш десятков баз занимает гигабайты.
Главный признак: проблема воспроизводится на одном компьютере или у одного пользователя, а у коллег в той же базе её нет. Если ошибка у всех, дело почти наверняка не в кэше.
Где лежат временные файлы 1С на диске
Кэш делится на две части. Обе находятся в профиле пользователя Windows.
| Папка | Что в ней | Можно удалять |
|---|---|---|
%LOCALAPPDATA%\1C\1cv8\<GUID> | Локальная копия конфигурации, кэш форм и метаданных | Да, это и есть основной кэш |
%APPDATA%\1C\1cv8\<GUID> | Служебные файлы и часть настроек клиента по конкретной базе | Да, если не помогла очистка Local |
%APPDATA%\1C\1CEStart\ibases.v8i | Список баз в окне запуска | Нет, это список ваших баз |
%TEMP% | Временные файлы сеанса, например v8_*.tmp | Да, при закрытой 1С |
Если ввести %LOCALAPPDATA% в адресную строку Проводника, откроется C:\Users\<имя>\AppData\Local. Папка AppData скрытая, поэтому руками её проще найти именно так.
Как понять, какая папка относится к какой базе
Имя папки кэша совпадает с идентификатором базы в списке запуска. Откройте ibases.v8i Блокнотом и найдите блок нужной базы: в нём есть строка ID= с тем же GUID. Так можно почистить кэш
одной проблемной базы и не трогать остальные.
Если баз в списке много, ищите в ibases.v8i по названию базы в квадратных скобках, а затем смотрите строку ID= в этом же блоке.
На Linux кэш клиента лежит в домашнем каталоге пользователя, в скрытой папке ~/.1cv8. Принцип тот же: внутри каталоги с GUID баз.
1. Удаление кэша 1С вручную через Проводник
Способ подходит для одного компьютера и занимает пару минут.
- Закройте все окна 1С, включая Конфигуратор.
- Откройте Диспетчер задач и проверьте, что не осталось процессов
1cv8.exeи1cv8c.exe. Зависший процесс держит файлы, и Windows не даст их удалить. - Нажмите
Win+R, введите%LOCALAPPDATA%\1C\1cv8и нажмите Enter. - Удалите папки с именами-GUID: длинные строки из букв и цифр через дефис. Файлы в корне папки не трогайте.
- Повторите то же для
%APPDATA%\1C\1cv8, если после шага 4 проблема осталась. - По желанию откройте
%TEMP%и удалите файлы, которые не заняты другими программами. - Запустите базу. Первый старт будет дольше обычного: платформа заново скачает конфигурацию.
Не удаляйте папку 1C целиком и папку 1CEStart. Вместе с ними пропадёт список баз, и его придётся собирать заново через «Добавить → Добавление в список существующей информационной базы».
Перед удалением можно переименовать папку, например дописать к имени _old. Если всё заработало, её стирают через день-два. Если что-то пошло не так, папку просто возвращают.
2. Очистка кэша ключом /ClearCache и командной строкой
/ClearCache — это параметр запуска самой платформы. Он говорит 1С: при старте выбросить локальный кэш этой базы и загрузить всё заново. Ничего скачивать не нужно.
Через окно запуска
- В списке баз выделите нужную и нажмите «Изменить».
- Пройдите мастер до последней страницы, где есть поле «Дополнительные параметры запуска».
- Впишите туда
/ClearCacheи нажмите «Готово». - Откройте базу один раз.
- Вернитесь в настройки и уберите ключ, иначе кэш будет сбрасываться при каждом входе и база будет стартовать медленно.
Из командной строки или ярлыка
Ключ можно передать в строке запуска. Пример для файловой базы:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /ClearCache
Для клиент-серверной базы вместо /F указывают сервер и имя базы:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh" /ClearCache
Такой ярлык удобно положить на рабочий стол пользователю, у которого кэш ломается чаще других: он сам сбросит его двойным щелчком, без звонка администратору. Для обычной работы держите второй ярлык, без ключа.
Пути к базе и серверу подставьте свои. Если у вас установлена 32-разрядная платформа, она лежит в C:\Program Files (x86)\1cv8.
Bat-файл для полной очистки
Когда нужно сбросить кэш всех баз сразу, удобнее короткий скрипт. Он удаляет только папки с GUID-именами и не трогает список баз:
@echo off
echo Закройте 1С перед очисткой кэша.
pause
for /d %%i in ("%LOCALAPPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%i"
for /d %%i in ("%APPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%i"
echo Готово.
pause
Сохраните текст в файл clear_1c_cache.bat в кодировке OEM 866 или уберите русские строки echo, иначе в консоли будут «кракозябры». Запускать от имени того пользователя, чей кэш чистите, а не от администратора: у администратора свой профиль.
3. ClearCache, сторонние утилиты и чем они отличаются
В выдаче часто попадаются «утилиты ClearCache» и программы для очистки 1С. Отдельной программы с таким названием в составе платформы нет. ClearCache — это ключ запуска из предыдущего раздела.
Сторонние утилиты делают то же самое, что bat-файл: ищут папки кэша и удаляют их. Иногда в них добавлен выбор базы по имени и очистка нескольких профилей.
| Способ | Когда удобен | Риски |
|---|---|---|
| Проводник | Один компьютер, разовая проблема | Можно случайно удалить список баз |
Ключ /ClearCache | Одна база, пользователь без доступа к AppData | Забыли убрать ключ — медленный старт каждый раз |
| Bat или PowerShell | Много баз или регулярная очистка | Ошибка в маске удалит лишнее |
| Сторонняя утилита | Не хотите разбираться с путями | Неизвестный исполняемый файл с правами на профиль |
Утилиты из случайных архивов — частый способ занести на компьютер вредоносную программу. На рабочем месте бухгалтера, где стоит электронная подпись и клиент-банк, лучше обойтись встроенным ключом или своим скриптом из пяти строк.
4. Как почистить кэш 1С на терминальном сервере
На сервере терминалов (RDP) у каждого пользователя свой профиль, а значит, и свой кэш. Сбрасывать его можно по одному пользователю или сразу у всех.
Одному пользователю
- Попросите пользователя закрыть 1С или завершите его сеанс 1С в Диспетчере задач на вкладке «Пользователи».
- Откройте
C:\Users\<логин>\AppData\Local\1C\1cv8и удалите GUID-папки. - При необходимости сделайте то же в
C:\Users\<логин>\AppData\Roaming\1C\1cv8.
Всем пользователям сразу
Скрипт PowerShell от администратора удалит GUID-папки кэша во всех профилях:
$guid = '^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$'
Get-ChildItem 'C:\Users\*\AppData\Local\1C\1cv8\*', 'C:\Users\*\AppData\Roaming\1C\1cv8\*' -Directory -ErrorAction SilentlyContinue |
Where-Object { $_.Name -match $guid } |
Remove-Item -Recurse -Force -ErrorAction SilentlyContinue
Запускайте его, когда в 1С никто не работает
: вечером или после рассылки «выйдите из программы». Папки тех, кто остался в базе, заняты, и скрипт их пропустит. Если же завершить чужие процессы 1cv8c.exe силой, пользователи потеряют несохранённые документы.
Если используются перемещаемые профили или User Profile Disks, кэш хранится в профиле на общем ресурсе. Чистить его надёжнее, когда пользователь вышел из системы: при входе профиль снова подключится уже без лишних папок.
Кэш на сервере 1С:Предприятия
В клиент-серверном варианте есть ещё серверный кэш сеансов. Он лежит в каталоге кластера, по умолчанию C:\Program Files\1cv8\srvinfo\reg_1541, в папках с именами snccntx<GUID>. Его чистят, когда ошибки повторяются у всех пользователей сразу, а клиентская очистка не помогает.
- Предупредите пользователей: остановка службы обрывает все сеансы на сервере.
- Остановите службу «Агент сервера 1С:Предприятия 8.3».
- Удалите папки
snccntx*в каталогеreg_1541. Остальное содержимоеsrvinfoне трогайте: там реестр кластера. - Запустите службу и проверьте вход.
Если служба работает от отдельного каталога srvinfo, путь будет другим. Его видно в свойствах службы, в параметре -d строки запуска.
Если после очистки кэша 1С стало хуже
Обычно после сброса кэша всё работает сразу. Если нет, ориентируйтесь на симптом:
После очистки полезно проверить ровно тот сценарий, ради которого её делали: открыть форму, которая ломалась, сформировать проблемный отчёт. Если всё в порядке, удалите переименованные копии папок, чтобы они не занимали место.
Как сделать, чтобы кэш не мешал снова
Полностью отказаться от кэша нельзя, да и не нужно: без него 1С работала бы медленнее. Задача в том, чтобы он вовремя обновлялся.
- 🗓 После обновления конфигурации попросите всех выйти из базы и зайти заново. Большинство «старых форм» появляются у тех, кто не перезапускал программу.
- 🖥 На терминальном сервере поставьте скрипт очистки в Планировщик заданий на ночь раз в месяц или после плановых обновлений.
- 📂 Держите на сервере достаточно места на системном диске: кэш десяти баз на пользователя легко занимает сотни мегабайт.
- 🧹 Удаляйте из списка запуска базы, с которыми больше не работают, и их GUID-папки.
- 🔍 Если одну и ту же базу приходится чистить постоянно, ищите причину глубже: часто это нестабильная сеть до сервера или сбой при записи файлов на диск.