Папки кэша 1С:Предприятия на клиенте и сервере: пути и безопасная чистка
Содержание
Кэш 1С 8.3 на компьютере с Windows хранится в двух местах: %LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8. Внутри лежат папки с именами вида a1b2c3d4-... (GUID), по одной на каждую информационную базу из списка запуска. Чтобы очистить кэш
, закройте 1С и удалите эти GUID-папки или один раз запустите базу с параметром /ClearCache.
На сервере 1С свой кэш: сеансовые данные в каталоге кластера srvinfo\reg_1541. Его чистят реже и только с остановкой службы. Всё сказанное относится к платформе 8.3 и не зависит от конфигурации: пути одинаковые для Бухгалтерии, ЗУП, УТ и любой другой базы.
Как устроен кэш платформы 1С и почему он лежит в нескольких местах
Платформа не скачивает конфигурацию с сервера при каждом запуске. Описание метаданных, формы, модули клиента и часть служебных данных она сохраняет локально. Следующий запуск идёт быстрее: платформа сверяет версию и докачивает только изменения.
Кэш бывает трёх видов:
- 💻 Клиентский кэш конфигурации — на каждом компьютере, где запускали базу. Самый объёмный, именно его обычно и чистят.
- 🗂 Временные файлы —
v8_*.tmpи похожие в папке%TEMP%пользователя. Остаются после сбоев и аварийного закрытия. - 🖥 Серверный кэш — сеансовые данные и служебные файлы кластера на сервере 1С. Есть только в клиент-серверном варианте.
Пользовательские настройки форм, отборы и сохранённые варианты отчётов хранятся в самой информационной базе, а не в кэше. Поэтому после очистки они не пропадают. Пропадёт только «разогрев»: первый запуск займёт больше времени, пока платформа заново скачает конфигурацию.
Список баз в окне запуска — это не кэш. Он хранится в файле %APPDATA%\1C\1CEStart\ibases.v8i. Удалять его при чистке не нужно, иначе пользователю придётся заново добавлять все базы.
Где искать кэш 1С на рабочем месте с Windows
Откройте проводник и вставьте путь в адресную строку. Переменные окружения развернутся сами, включать показ скрытых папок не придётся.
| Что | Путь | Можно удалять |
|---|---|---|
| Основной кэш конфигураций | %LOCALAPPDATA%\1C\1cv8\<GUID> | Да, при закрытой 1С |
| Служебные файлы баз | %APPDATA%\1C\1cv8\<GUID> | Да, при закрытой 1С |
| Общие настройки запуска | %APPDATA%\1C\1cv8\*.pfl | Нет, без нужды не трогать |
| Список баз | %APPDATA%\1C\1CEStart\ibases.v8i | Нет |
| Временные файлы | %TEMP%\v8_* | Да, при закрытой 1С |
В развёрнутом виде первые два пути выглядят так: C:\Users\ivanova\AppData\Local\1C\1cv8 и C:\Users\ivanova\AppData\Roaming\1C\1cv8. Если на компьютере ещё живёт платформа 8.2, рядом будет папка 1cv82 — это её кэш, к 8.3 он отношения не имеет.
Как понять, какая папка относится к нужной базе
Имя GUID-папки совпадает с идентификатором базы в списке запуска. Откройте ibases.v8i в Блокноте и найдите блок своей базы:
[Бухгалтерия ООО Ромашка]
Connect=Srvr="srv1c";Ref="buh_romashka";
ID=3f6c2a91-8d47-4b1e-9a05-7c2e1d0b4f88
...
Строка ID= и есть имя папки. Удалите только %LOCALAPPDATA%\1C\1cv8\3f6c2a91-... и её пару в %APPDATA% — кэш остальных баз останется, и они запустятся как обычно.
Тонкий клиент, толстый клиент и конфигуратор
Отдельного кэша для каждого вида клиента нет. Тонкий клиент (1cv8c.exe), толстый клиент и конфигуратор (1cv8.exe) пишут в одни и те же GUID-папки базы. Поэтому чистка помогает сразу всем режимам запуска.
Папка с самой платформой, например C:\Program Files\1cv8\8.3.24.1548, — это программа, а не кэш. Удалять старые версии оттуда можно только через «Программы и компоненты», иначе сломается их удаление и обновление. К скорости работы базы эти папки отношения не имеют.
Сколько места занимает кэш
Чтобы увидеть размер кэша по каждой базе, запустите PowerShell от имени пользователя:
Get-ChildItem "$env:LOCALAPPDATA\1C\1cv8" -Directory |
Where-Object { $_.Name -match '^[0-9a-f]{8}-' } |
ForEach-Object {
$size = (Get-ChildItem $_.FullName -Recurse -File -ErrorAction SilentlyContinue |
Measure-Object Length -Sum).Sum
[pscustomobject]@{ Folder = $_.Name; MB = [math]::Round($size / 1MB, 1) }
} | Sort-Object MB -Descending
Папки, которых нет в ibases.v8i, — «сироты». Они остаются, когда базу удалили из списка или добавили заново: новый ID, новая папка, старая так и лежит. За пару лет на машине бухгалтера таких набирается на несколько гигабайт.
Кэш 1С на Linux и на терминальном сервере
Клиент на Linux
Кэш и настройки лежат в скрытых каталогах в домашней папке пользователя: ~/.1cv8/1C/1cv8 (GUID-папки баз) и ~/.1C/1cestart (там же файл ibases.v8i). Если каталоги не нашлись, ищите их командой:
find ~ -maxdepth 4 -type d -iname "1cv8*" 2>/dev/null
Логика та же, что в Windows: одна GUID-папка на базу, имя совпадает со строкой ID= в ibases.v8i.
Терминальный сервер (RDS)
На терминале у каждого пользователя свой профиль, а значит, свой кэш: C:\Users\<логин>\AppData\Local\1C\1cv8. Двадцать бухгалтеров с одной базой — двадцать копий кэша конфигурации на одном диске.
Что важно для администратора:
- 📦 Кэш лежит в
Localи не уезжает с перемещаемым профилем. Это правильно: он большой и быстро меняется. - 🐢 Если
AppData\Roamingперенаправлена на сетевую папку, служебные файлы 1С из%APPDATA%тоже работают по сети. Запуск и открытие форм от этого замедляются. - 🧹 При профилях на дисках UPD/FSLogix кэш живёт внутри файла профиля и раздувает его. Чистка кэша заметно уменьшает такие файлы.
Сервер 1С на Linux
Каталог кластера по умолчанию — /home/usr1cv8/.1cv8/1C/1cv8. Внутри та же структура, что и на Windows: reg_1541 и каталоги баз. Точный путь задаётся параметром -d при запуске агента. Проверить его можно так:
ps aux | grep ragent
В выводе после -d будет каталог кластера. Этот способ надёжнее любых путей по умолчанию: администратор мог перенести каталог на отдельный диск.
Файловая и клиент-серверная база: какой кэш где хранится
Файловый вариант
В файловой базе серверного кэша нет. Есть только клиентский кэш на каждом компьютере и сама папка базы. В папке базы лежат:
1Cv8.1CD— сама база. Не трогать.1Cv8Log— журнал регистрации. Это не кэш: удалите — потеряете историю действий пользователей.1Cv8FTxt— индекс полнотекстового поиска. Его можно пересоздать из режима администрирования, но вручную удалять незачем.
Даже если файловая база лежит в сетевой папке на «сервере», кэш всё равно на клиентах. Чистить нужно на компьютере, где возникает ошибка.
Клиент-серверный вариант
На сервере 1С для Windows каталог кластера по умолчанию — C:\Program Files\1cv8\srvinfo. Как и на Linux, точный путь виден в свойствах службы агента: параметр -d в строке «Исполняемый файл».
Структура внутри:
| Объект | Что это | Удалять |
|---|---|---|
1CV8Reg.lst | Реестр кластеров сервера | Никогда |
reg_1541\1CV8Clst.lst | Реестр кластера: базы, администраторы, рабочие серверы | Никогда |
reg_1541\snccntx<GUID> | Сеансовые данные, серверный кэш | Да, при остановленной службе |
reg_1541\<GUID базы> | Служебные данные базы, в т. ч. индекс полнотекстового поиска | Нет |
Число 1541 в имени — порт менеджера кластера. Если кластер поднят на другом порту, папка будет называться иначе, например reg_2541.
Потеря 1CV8Clst.lst означает, что кластер «забудет» все зарегистрированные базы. Перед любой чисткой на сервере скопируйте каталог srvinfo целиком в другое место.
Безопасная очистка кэша 1С: четыре способа
| Способ | Когда подходит | Риски |
|---|---|---|
Параметр /ClearCache | Проблема у одного пользователя с одной базой | Почти нет |
| Удаление GUID-папок вручную | Ошибка не уходит после /ClearCache, нужно освободить место | Удалить не те файлы, если 1С открыта |
| Скрипт по всем профилям | Терминальный сервер, массовая чистка | Обрыв работы пользователей, если запустить днём |
| Чистка серверного кэша | Ошибки у всех пользователей сразу | Остановка всех сеансов кластера |
Способ 1. Запуск с параметром /ClearCache
Самый мягкий вариант: платформа сама сбросит кэш базы при запуске.
- В окне запуска выделите базу и нажмите
Изменить. - Пройдите мастер до последней страницы.
- В поле «Дополнительные параметры запуска» впишите
/ClearCache. - Нажмите
Готовои запустите базу. - Когда всё заработает, уберите параметр. Иначе кэш будет сбрасываться при каждом входе, и запуск станет медленным навсегда.
Тот же параметр можно передать в ярлыке: "C:\Program Files\1cv8\common\1cestart.exe" /ClearCache.
Способ 2. Удаление папок вручную
- Закройте все окна 1С. Проверьте в диспетчере задач, что нет процессов
1cv8.exeи1cv8c.exe. - Откройте
%LOCALAPPDATA%\1C\1cv8и удалите GUID-папку нужной базы или все GUID-папки сразу. - То же сделайте в
%APPDATA%\1C\1cv8. - По желанию очистите
%TEMP%от файловv8_*. - Запустите 1С. Первый вход будет дольше обычного.
Файлы .pfl и ibases.v8i не удаляйте: в них настройки окна запуска и список баз.
Способ 3. Скрипт для всех пользователей терминала
Запускайте от имени администратора, когда в 1С никто не работает : ночью или после рассылки предупреждения. Скрипт сам проверяет, не запущена ли 1С, и в этом случае останавливается.
@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 %%U in ("C:\Users\*") do (
for /d %%D in ("%%U\AppData\Local\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%D"
for /d %%D in ("%%U\AppData\Roaming\1C\1cv8\????????-????-????-????-????????????") do rd /s /q "%%D"
)
echo Cache cleared.
goto :eof
:busy
echo 1C is running. Ask users to log off and try again.
pause
Маска из вопросительных знаков совпадает только с GUID-папками. Файлы настроек и список баз скрипт не задевает.
Способ 4. Очистка серверного кэша
Остановка службы агента обрывает сеансы всех пользователей всех баз кластера. Делайте это в нерабочее время и предупредите людей заранее.
- Сохраните копию каталога
srvinfo. - Остановите службу агента сервера 1С:Предприятия. На Windows — через
services.msc, на Linux — черезsystemctl stopс именем юнита. Имя юнита покажетsystemctl list-units | grep 1cv8. - Убедитесь, что процессов
ragent,rmngrиrphostне осталось. - В каталоге
reg_1541удалите папкиsnccntx*. Остальное не трогайте. - Запустите службу и проверьте вход в базу.
Когда тормоза и ошибки вызваны кэшем: диагностика
Кэш виноват не всегда. Если ошибка воспроизводится у всех пользователей на разных компьютерах, клиентский кэш почти наверняка ни при чём — ищите на сервере или в самой базе. Если проблема только на одном рабочем месте или только у одного пользователя терминала, начинайте с кэша.
Быстрая проверка: зайдите в ту же базу с другого компьютера или под другим пользователем Windows. Работает — значит, дело в локальном кэше или профиле.
Перед чисткой запишите себе три вещи. Они пригодятся, если проблема вернётся:
- Точный текст ошибки и момент, когда она появляется: при запуске, при открытии формы, при проведении.
- Версию платформы на клиенте и на сервере. Она видна в окне «О программе». Расхождение версий клиента и сервера само по себе даёт ошибки, и чистка кэша их не лечит.
- Было ли накануне обновление конфигурации , платформы или перезагрузка сервера.
Если после чистки ошибка вернулась через день-два на том же компьютере, кэш — следствие, а не причина. Смотрите антивирус (исключите из проверки папки кэша 1С), нехватку места на диске и стабильность сети до сервера.
/ClearCache. Не помогло — удалите GUID-папки базы вручную. Если ошибка есть у всех пользователей сразу, чистите сеансовые данные на сервере./ClearCache или удаление GUID-папки. Перед этим убедитесь, что обновление действительно применено к базе, а не только загружено в конфигуратор./ClearCache в параметрах запуска или ярлыке. Если прописан — уберите: кэш сбрасывается при каждом входе.AppData\Local\1C\1cv8 по профилям. Удалите «сиротские» GUID-папки и кэш уволенных сотрудников.snccntx* при остановленной службе — по способу 4.Частые вопросы
Можно ли чистить кэш, пока 1С открыта?
Пропадут ли настройки отчётов и форм после очистки кэша?
Как часто нужно чистить кэш 1С?
Удаление базы из списка запуска очищает её кэш?
ibases.v8i удалится, а GUID-папка останется. Её придётся удалить вручную.