Чистим кэш и временные папки 1С:Предприятия 8.3 без потери настроек

· 10 мин

Содержание

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

Чистка нужна, когда после обновления конфигурации видны старые формы, база открывается с ошибкой, программа тормозит на ровном месте или на диске профиля пропали гигабайты.

Где хранятся временные файлы и кэш платформы

Платформа 1С:Предприятие 8.3 складывает служебные данные в профиль пользователя Windows. Для каждой информационной базы создаётся своя папка, имя которой — идентификатор GUID из 36 символов, например 5f2c9a1e-7d3b-4c8a-9e10-2b6f4d8a1c33.

Основные места:

КаталогЧто там лежитМожно чистить?
%LOCALAPPDATA%\1C\1cv8\<GUID>кэш конфигурации: метаданные, формы, модулида, это главный кэш
%APPDATA%\1C\1cv8\<GUID>локальные данные клиента по базеда
%APPDATA%\1C\1cv8\*.pflфайлы настроек запуска и клиентанет
%APPDATA%\1C\1CEStart\ibases.v8iсписок информационных базнет, ни в коем случае
%TEMP%временные файлы сеанса (выгрузки, отчёты, вложения)да, при закрытой 1С

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

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

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

Что занимает место

Кэш одной базы БП 3.0 или ЗУП 3.1 весит от сотен мегабайт до нескольких гигабайт. Если пользователь работал с десятком баз, включая давно удалённые, в профиле копятся мёртвые папки. Платформа их сама не убирает. На терминальном сервере с 30 пользователями это легко превращается в десятки гигабайт.

Как удалить кэш 1С вручную в профиле пользователя

Ручная очистка временных файлов 1С занимает пару минут и подходит для разовой проблемы на одном компьютере.

  1. Закройте все окна 1С: и режим «Предприятие», и Конфигуратор. Проверьте в диспетчере задач, что нет процессов 1cv8.exe, 1cv8c.exe и 1cv8s.exe.
  2. Нажмите Win+R, введите %LOCALAPPDATA%\1C\1cv8 и нажмите Enter.
  3. Выделите все папки с GUID-именами и удалите их. Файлы в корне каталога не трогайте.
  4. Повторите то же для %APPDATA%\1C\1cv8. Здесь в корне лежат файлы .pfl — их оставьте.
  5. Откройте %TEMP% и удалите всё, что удаляется. Файлы, занятые другими программами, Windows пропустит — это нормально.
  6. Запустите 1С и откройте базу. Первый вход будет дольше обычного.

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

Если удаление папки не проходит с сообщением, что файл занят, значит, 1С ещё работает. Иногда процесс висит в фоне после аварийного закрытия. Завершите его в диспетчере задач и повторите.

Сброс кэша одной конкретной базы

Если проблема только в одной базе, а остальные работают нормально, чистить всё не обязательно. Отсортируйте GUID-папки в %LOCALAPPDATA%\1C\1cv8 по дате изменения, закройте 1С, откройте проблемную базу и снова закройте. Папка с самой свежей датой — её. Удалите только эту папку и одноимённую в %APPDATA%\1C\1cv8.

Очистка кэша 1С через окно запуска: параметр /ClearCache

Этот способ не требует лазить по скрытым папкам. Платформа сама сбросит кэш базы при старте.

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

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

Тот же параметр работает в командной строке и в ярлыке:

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

Для клиент-серверной базы вместо /F указывают /S"сервер\имябазы".

/ClearCache чистит кэш только той базы, которую вы открываете. Мёртвые папки от старых баз он не удалит — для них нужна ручная или скриптовая очистка.

Что выбрать: сравнение способов

СпособКогда подходитМинусы
Ручное удаление GUID-папокодин ПК, нужно освободить местолегко задеть лишнее
/ClearCache в окне запускаглюк одной базы после обновленияне убирает старые папки
bat- или PowerShell-скриптмного пользователей, терминальный сервернужно аккуратно написать и проверить
Очистка кэша сервера 1Ссбои у всех пользователей сразутребует остановки службы

Сторонние утилиты и готовые скрипты очистки

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

Прежде чем запускать чужую утилиту, ответьте на три вопроса:

  • 🔍 Какие папки она удаляет? Если в описании нет точного списка путей — не запускайте.
  • 🔐 Требует ли права администратора? Для очистки своего профиля они не нужны. Утилита, которая просит повышенных прав без причины, — повод насторожиться.
  • 📦 Откуда скачана? Исполняемый файл с форума — классический способ подцепить вредонос, а у бухгалтера на компьютере обычно стоит электронная подпись и банк-клиент.

Почти всё, что делают такие утилиты, укладывается в 10 строк скрипта, который вы можете прочитать целиком. Готовый вариант — в следующем разделе.

Автоматизация очистки временных файлов 1С

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

Скрипт для текущего пользователя (PowerShell)

Скрипт удаляет только папки, имя которых точно совпадает с шаблоном GUID. Файлы .pfl и список баз он не трогает.

# Очистка кэша 1С для текущего пользователя
if (Get-Process 1cv8, 1cv8c -ErrorAction SilentlyContinue) {
    Write-Host "1С запущена, очистка отменена"
    exit 1
}
$guid = '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$'
foreach ($root in "$env:LOCALAPPDATA\1C\1cv8", "$env:APPDATA\1C\1cv8") {
    if (Test-Path $root) {
        Get-ChildItem $root -Directory |
            Where-Object { $_.Name -match $guid } |
            Remove-Item -Recurse -Force -ErrorAction SilentlyContinue
    }
}
Write-Host "Кэш 1С очищен"

Проверка процессов в начале защищает от частичной очистки, когда часть файлов занята. Сохраните скрипт как clear1c.ps1 и запускайте через powershell -ExecutionPolicy Bypass -File clear1c.ps1.

Вариант на bat

Если PowerShell запрещён политиками, подойдёт bat. Он грубее: удаляет все подпапки, у которых в имени есть дефис, поэтому сначала посмотрите, нет ли в каталогах посторонних папок.

@echo off
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.exe" >nul && exit /b 1
tasklist /FI "IMAGENAME eq 1cv8.exe" | find /I "1cv8.exe" >nul && exit /b 1
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*-*") do rd /s /q "%%D"
for /d %%D in ("%APPDATA%\1C\1cv8\*-*") do rd /s /q "%%D"
del /q /f "%TEMP%\*.*" 2>nul

Как запускать по расписанию

  • 🗓 Планировщик заданий Windows. Создайте задачу с триггером «При входе в систему» и действием «Запуск программы» со скриптом. Для очистки своего профиля задача должна выполняться от имени того же пользователя.
  • 🖥 Терминальный сервер . Скрипт выполняйте при входе каждого пользователя: через групповую политику (сценарий входа) или задачу планировщика для группы пользователей. Чистить чужие профили из-под администратора можно, но только ночью, когда все вышли.
  • ⏱ Частота. Ежедневная очистка не нужна и только замедлит утренний запуск. Разумно — раз в неделю или раз в месяц, плюс разово после обновления конфигурации.

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

Кэш на сервере 1С:Предприятия

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

Сервер хранит их в каталоге srvinfo. Где он находится, видно в свойствах службы «Агент сервера 1С:Предприятия 8.3»: путь указан после ключа -d в строке запуска. Внутри — папка reg_1541 (по номеру порта менеджера кластера), а в ней каталоги snccntx с данными сеансов.

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

  1. Предупредите пользователей и дождитесь, пока все выйдут из баз. При остановке службы все сеансы на сервере оборвутся, несохранённые документы будут потеряны.
  2. Остановите службу агента сервера 1С.
  3. Скопируйте каталог reg_1541 в резервное место.
  4. Удалите внутри него только папки, имя которых начинается на snccntx.
  5. Запустите службу и проверьте вход в базы.

Не удаляйте reg_1541 целиком и не трогайте файл 1CV8Clst.lst. В нём реестр кластера: список баз, рабочих серверов, администраторов. Без него кластер придётся настраивать заново.

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

Где у вас проблема?

Как очистка кэша влияет на скорость работы 1С

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

Что становится лучше:

  • ✅ пропадают «призраки» после обновления: старые формы, исчезнувшие реквизиты, ошибки при открытии документов;
  • ✅ уходят сбои из-за повреждённого кэша после аварийного выключения или переполненного диска;
  • ✅ освобождается место в профиле, а с ним ускоряется вход в Windows с перемещаемыми профилями.

Что становится хуже, временно:

  • 🐢 первый запуск каждой базы идёт дольше — от нескольких секунд до пары минут, по медленному каналу ещё больше;
  • 🐢 первое открытие часто используемых форм и отчётов тоже чуть медленнее.

Со второго-третьего запуска всё возвращается в норму. Если 1С медленно работает постоянно, а не только после очистки, кэш тут ни при чём. Тогда ищите причину в другом: блокировки, нехватка памяти на сервере, медленная сеть до файловой базы, неактуальная статистика СУБД.

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

Ошибки, из-за которых чистка вредит

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

  • ❌ Удалили папку 1C в профиле целиком. Кэш очистится, но вместе с ним пропадут список баз и настройки запуска. Список баз восстанавливается только вручную или из копии ibases.v8i.
  • ❌ Чистили при открытой 1С. Часть файлов занята, удалится не всё, а запущенный сеанс может упасть. Результат непредсказуем.
  • ❌ Удалили файлы в каталоге самой базы. В папке файловой базы лежат 1Cv8.1CD (это и есть ваши данные), журнал регистрации и индекс полнотекстового поиска. К временным файлам кэша они отношения не имеют. Удалите 1Cv8.1CD — потеряете базу.
  • ❌ Оставили /ClearCache в параметрах запуска. База каждый раз собирает кэш заново и открывается медленно, а пользователи жалуются на «тормоза после чистки».
  • ❌ Удалили на сервере весь srvinfo. Кластер теряет реестр, базы пропадают из консоли администрирования.
  • ❌ Запустили непроверенную утилиту от администратора. Кроме кэша она могла удалить что угодно.

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

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

Пропадут ли мои документы и справочники после очистки кэша?
Нет. Документы, справочники и проводки хранятся в самой информационной базе, а не в профиле пользователя. Кэш содержит только копию конфигурации для ускорения запуска.
Нужно ли чистить кэш у каждого пользователя после обновления конфигурации?
Обычно нет: платформа сама видит, что конфигурация изменилась, и обновляет кэш. Чистка нужна, если у конкретного пользователя после обновления остались старые формы или ошибки.
Как очистить кэш, если 1С работает через браузер?
Веб-клиент хранит данные в кэше браузера. Очистите кэш и файлы cookie для адреса публикации 1С в настройках браузера или откройте базу в режиме инкогнито для проверки.
Почему после очистки снова появляются папки с GUID-именами?
Так и должно быть. Платформа создаёт папку для каждой базы при первом открытии. Удалять их имеет смысл при сбоях или для освобождения места, а не постоянно.
Можно ли перенести кэш 1С на другой диск?
Средствами самой 1С путь кэша не меняется: он привязан к профилю Windows. Если на системном диске мало места, переносят весь профиль или папку AppData средствами Windows, а это задача системного администратора.