Очистка кэша и временных файлов 1С на компьютере и сервере

· 10 мин

Содержание

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

Ручная очистка подходит, когда нужно разом почистить кэш всех баз и освободить место. Параметр /ClearCache — когда сбоит одна база. На сервере 1С временные файлы чистят только при остановленной службе, и там есть папки, которые трогать нельзя. Всё это касается платформы 8.3 в целом, конфигурация значения не имеет.

Какие временные файлы создаёт 1С и зачем их удалять

Платформа 1С не хранит всё в базе. Часть данных она складывает на диск, чтобы не тянуть их каждый раз заново:

  • 📦 кэш конфигурации — описание метаданных, форм, модулей. С ним база открывается быстрее;
  • 🧩 кэш форм и настроек клиента — что открывалось, в каком виде;
  • 📄 временные файлы сеанса — файлы v8_*.tmp в папке %TEMP%: выгрузки отчётов, вложения, промежуточные данные печати;
  • 🗄️ сеансовые данные сервера — у клиент-серверной базы на стороне сервера 1С;
  • 🧾 журнал регистрации — формально не временный, но растёт быстрее всего.

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

Вторая причина чистить — место на диске. У пользователя, который годами подключается к десятку баз, папки кэша доходят до нескольких гигабайт. На терминальном сервере с 30 пользователями это уже десятки гигабайт в профилях.

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

Где лежат временные файлы 1С: клиент, файловая база, сервер

Сводная таблица по местам хранения:

ГдеПуть (по умолчанию)Что внутриМожно удалять
Профиль пользователя, роуминг%APPDATA%\1C\1cv8папки-GUID с кэшем баз, файлы настроек *.pflпапки-GUID — да
Профиль пользователя, локально%LOCALAPPDATA%\1C\1cv8папки-GUID с кэшем конфигурациида
Временная папка Windows%TEMP%файлы v8_*.tmpда, при закрытой 1С
Список баз%APPDATA%\1C\1CEStart\ibases.v8iсписок информационных базнет
Каталог файловой базыпапка с 1Cv8.1CDбаза, журнал 1Cv8Log, индекс поискатолько по особым правилам
Сервер 1СC:\Program Files\1cv8\srvinfo\reg_1541реестр кластера, папки баз, snccntx*только snccntx*

Чтобы открыть папку профиля, нажмите Win+R, вставьте %APPDATA%\1C\1cv8 и нажмите Enter. Так же с %LOCALAPPDATA%\1C\1cv8 и %TEMP%. Полный путь будет примерно таким: C:\Users\Ivanov\AppData\Roaming\1C\1cv8.

Каждая папка с именем-GUID (3f2a9c1e-7b44-4d0a-9e1f-0c5d2b8a6e71) соответствует одной базе из списка. По имени не понять, какая база какая, но для очистки это и не нужно: при следующем запуске платформа создаст недостающие папки заново.

Каталог srvinfo может лежать в другом месте. Его путь задают при установке сервера или в параметрах службы. Точное место видно в свойствах службы агента сервера, в строке запуска после ключа -d.

Как удалить временные файлы 1С на компьютере пользователя

Есть три способа. Они отличаются охватом и риском.

СпособКогда выбиратьЧто очищаетРиски
Параметр /ClearCacheсбоит одна база после обновлениякэш одной базыпочти нет
Ручное удаление папокнужно почистить всё и освободить местокэш всех базсбросятся часть локальных настроек
Скрипт по расписаниютерминальный сервер, много пользователейкэш всех пользователейудаление при запущенной 1С, если не проверять процессы

Способ 1. Параметр /ClearCache в списке баз

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

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

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

Тот же параметр работает в ярлыке. Пример строки запуска:

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

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

Способ 2. Ручное удаление папок кэша

  1. Закройте все окна 1С: Предприятие и Конфигуратор.
  2. Откройте Диспетчер задач (Ctrl+Shift+Esc) и проверьте, что нет процессов 1cv8.exe, 1cv8c.exe, 1cv8s.exe. Если висят — завершите их, предварительно убедившись, что в этих окнах нет несохранённых документов.
  3. Перейдите в %APPDATA%\1C\1cv8.
  4. Удалите все папки с именами-GUID. Файлы с расширением .pfl можно оставить.
  5. Повторите для %LOCALAPPDATA%\1C\1cv8.
  6. Перейдите в %TEMP% и удалите файлы, начинающиеся на v8_.
  7. Запустите 1С и откройте базу.

Не удаляйте папку 1CEStart и файл ibases.v8i: в нём хранится список баз . Если стереть его, список в окне запуска окажется пустым, и базы придётся добавлять заново по путям.

Если удалить и файлы *.pfl, сбросятся локальные настройки клиента: последняя открытая база, некоторые параметры окна запуска. Данные и настройки пользователя, хранящиеся в самой базе, останутся.

Временные файлы в каталоге файловой базы

В папке файловой базы, кроме 1Cv8.1CD, лежат служебные файлы и каталоги: журнал регистрации 1Cv8Log, индекс полнотекстового поиска 1Cv8FTxt. Временный файл 1Cv8tmp.1CD создаётся во время работы и обычно исчезает при корректном выходе.

Правила простые:

  • 🔒 удаляйте что-либо здесь, только когда в базе нет ни одного пользователя;
  • 💾 перед этим скопируйте папку базы целиком;
  • 🚫 1Cv8.1CD не трогайте никогда — это и есть база.

Каталог 1Cv8FTxt можно удалить, если поиск работает с ошибками. Индекс потом нужно перестроить в настройках полнотекстового поиска, иначе поиск по базе будет пустым.

Очистка временных файлов на сервере 1С

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

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

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

  1. Попросите пользователей выйти. Проверьте в консоли администрирования серверов, что сеансов не осталось.
  2. Откройте services.msc и остановите службу агента сервера 1С:Предприятия 8.3.
  3. Перейдите в каталог srvinfo\reg_1541 (номер 1541 — порт менеджера кластера; при другом порте имя будет другим).
  4. Удалите папки, имена которых начинаются на snccntx. Это и есть сеансовые данные.
  5. Запустите службу и проверьте вход в базу.

Что категорически нельзя удалять в reg_1541:

  • ❌ файл 1CV8Clst.lst — реестр кластера: список баз, рабочих серверов, администраторов. Без него кластер придётся настраивать заново;
  • ❌ папки-GUID баз целиком — внутри лежит журнал регистрации 1Cv8Log. Удалите папку — потеряете историю действий пользователей.

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

Автоматическая очистка: скрипт и планировщик заданий

На одном компьютере проще почистить руками. На терминальном сервере или в отделе из 20 человек удобнее скрипт.

Скрипт для компьютера пользователя

Скрипт проверяет, не запущена ли 1С, и только тогда удаляет кэш текущего пользователя:

@echo off
rem Выходим, если 1С запущена
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.exe" >nul && exit /b
tasklist /FI "IMAGENAME eq 1cv8.exe"  | find /I "1cv8.exe"  >nul && exit /b

rem Папки кэша баз (имена-GUID)
for /d %%D in ("%APPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*-*-*-*-*") do rd /s /q "%%D"

rem Временные файлы сеансов
del /q "%TEMP%\v8_*.tmp" 2>nul

Маска *-*-*-*-* выбирает только папки-GUID. Папка 1CEStart под неё не попадает, список баз останется на месте.

Сохраните файл как clear1c.bat и добавьте задание в Планировщик заданий Windows:

  1. Откройте taskschd.msc.
  2. Выберите «Создать задачу ».
  3. На вкладке «Триггеры» задайте запуск при входе пользователя в систему.
  4. На вкладке «Действия» укажите путь к clear1c.bat.
  5. Сохраните задание.

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

На терминальном сервере tasklist без фильтра по пользователю видит процессы всех сеансов. Скрипт выше в этом случае просто не сработает, пока хоть кто-то работает в 1С. Это безопасно, но очистка будет пропускаться. Запускайте его в контексте каждого пользователя при входе.

Скрипт для сервера 1С

Для сервера задание ставят на ночь, в окно обслуживания:

$srv = "C:\Program Files\1cv8\srvinfo\reg_1541"
$svc = Get-Service | Where-Object { $_.Name -like "1C:Enterprise 8.3 Server Agent*" }

Stop-Service -InputObject $svc -Force
Start-Sleep -Seconds 20
Get-ChildItem -Path $srv -Directory -Filter "snccntx*" | Remove-Item -Recurse -Force
Start-Service -InputObject $svc

Перед использованием проверьте две вещи: путь к srvinfo и имя службы в services.msc — оно зависит от разрядности и способа установки. Пауза нужна, чтобы рабочие процессы успели завершиться и освободить файлы.

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

Облачная 1С: что можно почистить самому

В облачных сервисах (1cfresh.com, аренда 1С у хостинг-провайдера) сервер обслуживает поставщик. Доступа к srvinfo у пользователя нет, и сеансовые данные сервера он не чистит.

Что остаётся в ваших руках:

  • 🖥️ тонкий клиент на вашем компьютере хранит кэш в тех же папках %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Чистится так же, как описано выше, и параметр /ClearCache тоже работает;
  • 🌐 веб-клиент в браузере хранит данные в кэше браузера. Сбросьте кэш и файлы cookie для адреса сервиса в настройках браузера и войдите заново;
  • 🖧 удалённый рабочий стол у хостера — кэш лежит в вашем профиле на сервере провайдера. Если есть доступ к проводнику в сеансе, путь тот же. Если нет — напишите в поддержку хостинга.

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

Как не допустить разрастания временных файлов

Совсем избавиться от временных файлов нельзя — они нужны для работы. Но их рост можно держать под контролем:

  • 🚪 закрывайте 1С штатно, через меню или крестик. Завершение процесса в Диспетчере задач оставляет хвосты в %TEMP% и в папке файловой базы;
  • 🧹 сокращайте журнал регистрации. В Конфигураторе: Администрирование → Настройка журнала регистрации, кнопка «Сократить». Старые записи можно выгрузить в файл перед удалением;
  • 📉 отключите лишние уровни журнала. Если записываются все события, включая примечания, журнал растёт в разы быстрее, чем при уровне «Ошибки» или «Предупреждения»;
  • 🗑️ удалите старые версии платформы. Каждая версия в C:\Program Files\1cv8 занимает сотни мегабайт. Удаляйте их через «Программы и компоненты», а не стиранием папки;
  • 📅 чистите кэш после обновлений конфигурации, а не раз в год, когда диск уже переполнен;
  • 💽 следите за местом на системном диске сервера: при нехватке места сервер 1С начинает работать нестабильно.

Встроенная утилита Windows «Очистка диска» тоже удаляет содержимое %TEMP%, включая файлы v8_*.tmp. Но папки кэша конфигурации в профиле она не трогает.

Ошибки при удалении временных файлов и что с ними делать

Диагностика: выберите симптом

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

Пропадут ли настройки отчётов после удаления кэша?
Нет. Варианты отчётов, настройки форм и пользовательские настройки в управляемом интерфейсе хранятся в информационной базе, а не в папках профиля.
Как понять, какая папка-GUID относится к какой базе?
Идентификатор базы указан в файле ibases.v8i в строке ID. Найдите в этом файле имя базы и посмотрите её ID — он совпадает с именем папки кэша.
Можно ли удалять временные файлы, когда другие пользователи работают в базе?
Кэш в своём профиле — да, это затрагивает только вас. Файлы в каталоге файловой базы и на сервере 1С — нет, только когда все вышли.
Как очистить кэш в 1С 8.2?
Принцип тот же, но папки называются 1Cv82 вместо 1cv8: %APPDATA%\1C\1Cv82 и %LOCALAPPDATA%\1C\1Cv82. Параметр /ClearCache в 8.2 тоже поддерживается.
Нужно ли чистить временные файлы регулярно, если всё работает?
Нет. Чистите после обновления конфигурации, при странных ошибках форм и при нехватке места. Лишняя очистка только замедляет первый запуск.