Какие папки 1С можно стереть без вреда, а какие только после копии
Содержание
Каталог в 1С удаляют обычными средствами Windows, но сначала нужно понять, что в нём лежит. Папки кэша %APPDATA%\1C\1cv8\<GUID> и %LOCALAPPDATA%\1C\1cv8\<GUID> можно стирать при закрытой программе: платформа создаст их заново. Каталог файловой базы с файлом 1Cv8.1CD удаляют только после выгрузки .dt или копии этого файла, потому что в нём и есть все данные.
Удаление базы из списка запуска папку не трогает, а удаление папки не убирает базу из списка. Это две разные операции, и путаница между ними даёт и «потерянные» базы, и лишние гигабайты на диске. Ниже разобраны все типовые папки: клиентские, серверные, обменные и служебные.
С чего начать: опознать папку перед удалением
Первый шаг — определить, к чему относится каталог. По имени и содержимому это почти всегда видно сразу.
| Что видите в папке | Что это | Можно ли удалить |
|---|---|---|
1Cv8.1CD, папка 1Cv8Log | файловая информационная база | только после резервной копии |
папки с именами вида a1b2c3d4-... в %APPDATA%\1C\1cv8 | кэш конфигурации и настроек пользователя | да, при закрытой 1С |
файлы v8_*.tmp в %TEMP% | временные файлы сеанса | да, при закрытой 1С |
reg_1541, 1CV8Clst.lst в srvinfo | реестр кластера сервера 1С | нет, только отдельные подпапки кэша |
*.xml, *.zip с именами Message_... | сообщения обмена данными | да, если обмен уже их принял |
*.dt, *.cf | выгрузки базы и конфигурации | да, если это не последняя копия |
C:\Program Files\1cv8\8.3.xx.xxxx | установленная версия платформы | только через «Программы и компоненты» |
Как узнать, где лежит конкретная база:
- Откройте окно запуска 1С.
- Выделите базу в списке. Внизу окна показан путь:
File="D:\Bases\Buh"для файловой илиSrvr="server";Ref="buh"для серверной. - Для серверной базы папки на вашем компьютере нет: данные хранятся в СУБД, на клиенте остаётся только кэш.
GUID папки кэша совпадает с идентификатором базы в файле списка %APPDATA%\1C\1CEStart\ibases.v8i. Откройте его «Блокнотом», найдите блок с именем базы и строку ID= — так вы поймёте, какой каталог кэша к какой базе относится.
Очистка кэша и временных файлов платформы
Кэш — самая частая причина, по которой ищут, как удалить каталог в 1С. Он разрастается до нескольких гигабайт, если пользователь работает с десятком баз, и ломается после неудачного обновления: появляются странные ошибки форм, старые версии отчётов, зависания при запуске.
Ручная очистка кэша
- Закройте все окна 1С: и режим «1С:Предприятие», и Конфигуратор.
- Нажмите
Win+R, введите%APPDATA%\1C\1cv8и нажмите Enter. - Удалите папки с именами-GUID. Файлы
.pflв корне не трогайте: это локальные настройки окна запуска. - Повторите то же для
%LOCALAPPDATA%\1C\1cv8. - Запустите 1С. Первый вход в каждую базу займёт больше времени.
Если нужно очистить кэш
одной базы, удалите только её папку, найденную по ID= в ibases.v8i.
Очистка без удаления папок
У платформы есть параметр командной строки /ClearCache. Его добавляют в дополнительные параметры запуска базы: в окне запуска нажмите Изменить, пройдите до последнего шага мастера и впишите /ClearCache в поле дополнительных параметров. Платформа очистит кэш этой базы при входе.
Не оставляйте /ClearCache в настройках базы навсегда. Каждый запуск будет «холодным», и 1С станет открываться заметно медленнее. Поставили, вошли один раз, убрали.
Временные файлы сеанса
Во время работы платформа пишет временные файлы v8_*.tmp в папку %TEMP%. После аварийного закрытия они остаются. При закрытой 1С их можно удалить вручную или через «Очистку диска» Windows, раздел временных файлов.
Как удалить каталог файловой базы 1С
Файловая база — это одна папка. Главный файл 1Cv8.1CD содержит конфигурацию и данные. Рядом лежат 1Cv8Log (журнал регистрации) и, если включён полнотекстовый поиск, 1Cv8FTxt с индексом.
Удалите 1Cv8.1CD без копии — и базу не вернёт ни Конфигуратор, ни поддержка 1С.
Порядок действий:
- Сделайте копию. Откройте базу в Конфигураторе:
Администрирование → Выгрузить информационную базу, сохраните.dt. Альтернатива — скопировать1Cv8.1CDпри закрытой базе. - Проверьте, что в базе никого нет. Если папка лежит на сетевом ресурсе, на файловом сервере откройте «Управление компьютером» →
Общие папки → Открытые файлыи посмотрите, кто держит1Cv8.1CD. - Уберите базу из списка. В окне запуска выделите её и нажмите
Удалить. Платформа уберёт только строку из списка, файлы останутся. - Удалите каталог в Проводнике.
- Сообщите пользователям, у которых база была добавлена в список. У них остаётся «мёртвая» строка: при запуске появится ошибка, что файл базы не найден. Строку удаляют той же кнопкой
Удалить.
Если Windows пишет, что файл занят
Сообщение «Операция не может быть завершена, так как этот файл открыт в 1cv8.exe» значит, что базу держит процесс 1С. Причины:
- 🔒 у кого-то открыта база, в том числе свёрнутое окно Конфигуратора;
- 🔒 висит процесс
1cv8.exeили1cv8c.exeпосле аварийного закрытия — завершите его в диспетчере задач на том компьютере, где он запущен; - 🔒 база опубликована на веб-сервере, и её держит процесс IIS или Apache — остановите публикацию или веб-сервер.
Файл 1Cv8.1CL в папке базы — служебный файл блокировки. Пока базой кто-то пользуется, его удалять бессмысленно: он держится открытым.
Если нужно освободить место, а не удалить базу
Часто папку базы хотят «почистить», потому что она весит десятки гигабайт. Удалять базу для этого не нужно:
- 📉 журнал регистрации сокращают в Конфигураторе:
Администрирование → Журнал регистрации, команда сокращения с выбором даты, до которой удалить записи , и опцией сохранить их в файл; - 📉 индекс полнотекстового поиска пересоздаётся: папку
1Cv8FTxtможно удалить при закрытой базе, затем обновить индекс из программы; - 📉 сам
1Cv8.1CDсжимают через «Тестирование и исправление» в Конфигураторе с флажком сжатия таблиц информационной базы — это требует монопольного доступа, все пользователи должны выйти.
Каталоги сервера 1С в клиент-серверном варианте
В клиент-серверном варианте база живёт в СУБД (MS SQL Server или PostgreSQL), а на сервере 1С хранятся служебные каталоги кластера. По умолчанию для службы Windows это C:\Program Files\1cv8\srvinfo.
Структура:
- 📁
srvinfo\reg_1541— реестр кластера, где 1541 — порт менеджера кластера; - 📄
1CV8Clst.lst— список баз и настроек кластера, не удаляйте его никогда; - 📁 подпапки с GUID внутри
reg_1541— по одной на каждую базу: там журнал регистрации1Cv8Logи сеансовые данные; - 📁
snccntx*внутри папки базы — серверный кэш сеансов.
Очистка серверного кэша
Её делают, когда после обновления конфигурации у всех пользователей одинаковые ошибки, а клиентская очистка не помогла.
Остановка службы оборвёт сеансы всех пользователей всех баз этого сервера. Делайте это вечером или в выходной, предупредив людей заранее.
- Откройте
services.mscи остановите службу «Агент сервера 1С:Предприятия 8.3». - Перейдите в
srvinfo\reg_1541\<GUID базы>. - Удалите папки
snccntx*. Больше ничего в этом каталоге не трогайте. - Запустите службу и проверьте вход в базу.
GUID серверной базы виден в консоли кластера в свойствах базы или в выводе rac infobase summary list (подставьте идентификатор кластера из rac cluster list).
Удаление базы с сервера
Удалять папку в reg_1541 вручную нельзя: кластер будет считать базу существующей. Правильный путь — консоль администрирования серверов 1С: разверните кластер, раздел «Информационные базы», щёлкните базу правой кнопкой и выберите удаление. Консоль спросит, что сделать с базой данных в СУБД:
| Вариант | Что происходит | Когда выбирать |
|---|---|---|
| Оставить без изменений | база убрана из кластера, данные в СУБД остались | переносите базу на другой сервер 1С |
| Очистить базу данных | таблицы удалены, пустая база СУБД осталась | нужна та же база СУБД под новую загрузку |
| Удалить базу данных | база СУБД удалена целиком | база больше не нужна вообще |
Перед любым вариантом, кроме первого, сделайте резервную копию средствами СУБД или выгрузку .dt. Для работы из командной строки параметры удаления смотрите в справке rac help infobase.
Технологический журнал
Если на сервере включён технологический журнал, его папка (путь задан в файле logcfg.xml) может вырасти до сотен гигабайт. Старые подкаталоги с логами удаляются без последствий. Чтобы журнал не рос снова, задайте в logcfg.xml срок хранения через атрибут history (в часах) или отключите журнал после диагностики.
Папки обмена и выгрузок: что оставить, что стереть
Обмен через файловый каталог (РИБ, синхронизация БП с УТ, обмен с филиалом) складывает сообщения в общую папку. Обычно это файлы с префиксом Message_ в формате .xml или .zip. Каталог указан в настройках синхронизации: Администрирование → Синхронизация данных, откройте нужную настройку обмена и посмотрите параметры подключения.
Правила очистки:
- ✅ файл, который уже загружен в базу-получатель, можно удалять: при следующем обмене он будет перезаписан;
- ⛔ свежий файл, который получатель ещё не забрал, удалять нельзя — данные из него не дойдут, и придётся выгружать заново;
- ⛔ саму папку обмена не удаляйте, пока настройка синхронизации активна: обмен упадёт с ошибкой доступа к каталогу.
Если обмен больше не нужен, сначала отключите или удалите настройку синхронизации в обеих базах, потом удаляйте каталог.
Выгрузки .dt и .cf
Папки с выгрузками — главный пожиратель места. Типичная картина: 40 файлов .dt по 5 ГБ, сделанных перед каждым обновлением за два года. Разумная схема хранения:
- 🗓 последние 7 ежедневных копий;
- 🗓 4 еженедельные;
- 🗓 по одной на конец каждого месяца за год;
- 🗓 выгрузку перед обновлением держать до следующего обновления.
Файлы .cf весят меньше, но тоже копятся в каталогах поставок. Каталог шаблонов конфигураций, куда ставятся обновления, обычно лежит в %APPDATA%\1C\1cv8\tmplts. Старые релизы оттуда удаляют через Конфигуратор: в окне обновления конфигурации есть кнопка удаления неиспользуемых шаблонов. Это безопаснее, чем стирать папки вручную.
Старые версии платформы
Каждое обновление платформы
ставит новую папку в C:\Program Files\1cv8\ рядом со старой. Удалять их нужно через Параметры Windows → Приложения или «Программы и компоненты», а не в Проводнике: иначе в системе останутся записи установщика, и следующая установка той же версии может закончиться ошибкой. Оставьте текущую версию и одну предыдущую на случай отката.
Автоматическая очистка каталогов по расписанию
Ручная уборка раз в полгода превращается в аврал. Проще поставить скрипт в «Планировщик заданий» Windows.
Скрипт очистки клиентского кэша
@echo off
rem Очистка кэша 1С для текущего пользователя
tasklist /FI "IMAGENAME eq 1cv8.exe" | find /I "1cv8.exe" >nul && goto busy
tasklist /FI "IMAGENAME eq 1cv8c.exe" | find /I "1cv8c.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"
del /q "%TEMP%\v8_*.tmp" 2>nul
echo Кэш 1С очищен
exit /b 0
:busy
echo 1С запущена, очистка пропущена
exit /b 1
Маска *-* выбирает только папки с GUID: в их именах есть дефисы. Скрипт сам проверяет, не запущена ли 1С, и ничего не трогает, если запущена. Ставьте его на вход пользователя в систему или раз в месяц ночью.
Удаление старых выгрузок и сообщений обмена
# Удалить .dt старше 30 дней в папке выгрузок
Get-ChildItem -Path "D:\Backup1C" -Filter *.dt -File |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } |
Remove-Item
# Удалить сообщения обмена старше 14 дней
Get-ChildItem -Path "D:\Obmen" -Filter "Message_*" -File |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-14) } |
Remove-Item
Перед первым запуском добавьте к Remove-Item параметр -WhatIf: PowerShell покажет список файлов, которые удалил бы, но ничего не тронет. Проверили список — убрали -WhatIf.
Не удаляйте выгрузки только по возрасту, если копии делаются нерегулярно. Иначе после месяца без копий скрипт сотрёт последнюю. Надёжнее оставлять N последних файлов: Sort-Object LastWriteTime -Descending | Select-Object -Skip 10 | Remove-Item.
Что не автоматизировать
Серверный кэш snccntx* скриптом по расписанию не чистят: он требует остановки службы, а это обрыв сеансов. Делайте это вручную и только когда есть проблема.
Если удалили не ту папку: восстановление
Порядок действий зависит от того, что именно пропало.
Кэш, временные файлы, папки GUID в AppData. Ничего делать не нужно. Платформа пересоздаст их при следующем входе.
Файл ibases.v8i (пропал список баз). Базы целы, пропал только список. Добавьте их заново: Добавить → Добавление в список существующей информационной базы, укажите путь к папке файловой базы или сервер и имя серверной.
Папка 1Cv8Log. База работает, но история журнала регистрации потеряна. Платформа создаст пустой журнал. Вернуть записи можно только из резервной копии папки.
Каталог файловой базы. Действуйте быстро и не пишите ничего на этот диск:
- Удаление с локального диска — проверьте «Корзину». Удаление с сетевой папки в Корзину не попадает.
- На файловом сервере с включёнными теневыми копиями: правой кнопкой по родительской папке →
Свойства → Предыдущие версии. - Разверните последнюю выгрузку
.dt: создайте пустую базу, откройте её в Конфигураторе,Администрирование → Загрузить информационную базу. Загрузка требует монопольного доступа и полностью заменяет содержимое базы. - Если копий нет, остаются программы восстановления удалённых файлов. Шанс есть, пока поверх не записаны новые данные.
Базу удалили из кластера с вариантом «Удалить базу
данных». Восстановление только из бэкапа СУБД или из .dt. Если выбран вариант «Оставить без изменений», база в СУБД цела: заново зарегистрируйте её в кластере, указав ту же базу данных СУБД.
Частые вопросы
Можно ли удалить всю папку C:\Users\Имя\AppData\Roaming\1C?
ibases.v8i и шаблоны конфигураций. Список придётся собирать заново, поэтому лучше удалять только папки с GUID.Почему после очистки кэша 1С открывается медленно?
Удаляются ли пользовательские настройки при очистке кэша?
.pfl.