Какие папки 1С можно стереть без вреда, а какие только после копии

· 11 мин

Содержание

Каталог в 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. Откройте окно запуска 1С.
  2. Выделите базу в списке. Внизу окна показан путь: File="D:\Bases\Buh" для файловой или Srvr="server";Ref="buh" для серверной.
  3. Для серверной базы папки на вашем компьютере нет: данные хранятся в СУБД, на клиенте остаётся только кэш.

GUID папки кэша совпадает с идентификатором базы в файле списка %APPDATA%\1C\1CEStart\ibases.v8i. Откройте его «Блокнотом», найдите блок с именем базы и строку ID= — так вы поймёте, какой каталог кэша к какой базе относится.

Какой каталог вы хотите удалить?

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

Кэш — самая частая причина, по которой ищут, как удалить каталог в 1С. Он разрастается до нескольких гигабайт, если пользователь работает с десятком баз, и ломается после неудачного обновления: появляются странные ошибки форм, старые версии отчётов, зависания при запуске.

Ручная очистка кэша

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

Если нужно очистить кэш одной базы, удалите только её папку, найденную по ID= в ibases.v8i.

Очистка без удаления папок

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

Не оставляйте /ClearCache в настройках базы навсегда. Каждый запуск будет «холодным», и 1С станет открываться заметно медленнее. Поставили, вошли один раз, убрали.

Временные файлы сеанса

Во время работы платформа пишет временные файлы v8_*.tmp в папку %TEMP%. После аварийного закрытия они остаются. При закрытой 1С их можно удалить вручную или через «Очистку диска» Windows, раздел временных файлов.

Как удалить каталог файловой базы 1С

Файловая база — это одна папка. Главный файл 1Cv8.1CD содержит конфигурацию и данные. Рядом лежат 1Cv8Log (журнал регистрации) и, если включён полнотекстовый поиск, 1Cv8FTxt с индексом.

Удалите 1Cv8.1CD без копии — и базу не вернёт ни Конфигуратор, ни поддержка 1С.

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

  1. Сделайте копию. Откройте базу в Конфигураторе: Администрирование → Выгрузить информационную базу, сохраните .dt. Альтернатива — скопировать 1Cv8.1CD при закрытой базе.
  2. Проверьте, что в базе никого нет. Если папка лежит на сетевом ресурсе, на файловом сервере откройте «Управление компьютером» → Общие папки → Открытые файлы и посмотрите, кто держит 1Cv8.1CD.
  3. Уберите базу из списка. В окне запуска выделите её и нажмите Удалить. Платформа уберёт только строку из списка, файлы останутся.
  4. Удалите каталог в Проводнике.
  5. Сообщите пользователям, у которых база была добавлена в список. У них остаётся «мёртвая» строка: при запуске появится ошибка, что файл базы не найден. Строку удаляют той же кнопкой Удалить.

Если 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* внутри папки базы — серверный кэш сеансов.

Очистка серверного кэша

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

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

  1. Откройте services.msc и остановите службу «Агент сервера 1С:Предприятия 8.3».
  2. Перейдите в srvinfo\reg_1541\<GUID базы>.
  3. Удалите папки snccntx*. Больше ничего в этом каталоге не трогайте.
  4. Запустите службу и проверьте вход в базу.

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. База работает, но история журнала регистрации потеряна. Платформа создаст пустой журнал. Вернуть записи можно только из резервной копии папки.

Каталог файловой базы. Действуйте быстро и не пишите ничего на этот диск:

  1. Удаление с локального диска — проверьте «Корзину». Удаление с сетевой папки в Корзину не попадает.
  2. На файловом сервере с включёнными теневыми копиями: правой кнопкой по родительской папке → Свойства → Предыдущие версии.
  3. Разверните последнюю выгрузку .dt: создайте пустую базу, откройте её в Конфигураторе, Администрирование → Загрузить информационную базу. Загрузка требует монопольного доступа и полностью заменяет содержимое базы.
  4. Если копий нет, остаются программы восстановления удалённых файлов. Шанс есть, пока поверх не записаны новые данные.

Базу удалили из кластера с вариантом «Удалить базу данных». Восстановление только из бэкапа СУБД или из .dt. Если выбран вариант «Оставить без изменений», база в СУБД цела: заново зарегистрируйте её в кластере, указав ту же базу данных СУБД.

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

Можно ли удалить всю папку C:\Users\Имя\AppData\Roaming\1C?
Технически да, при закрытой 1С. Но вместе с кэшем пропадут список баз ibases.v8i и шаблоны конфигураций. Список придётся собирать заново, поэтому лучше удалять только папки с GUID.
Почему после очистки кэша 1С открывается медленно?
Платформа заново скачивает конфигурацию и строит кэш. Задержка бывает только при первом входе в каждую базу. Со второго раза скорость возвращается.
Удаляются ли пользовательские настройки при очистке кэша?
Настройки форм и отчётов хранятся в самой базе, поэтому очистка кэша их не трогает. Сбрасываются только локальные параметры окна запуска, если удалить файлы .pfl.
Как удалить каталог базы, если она открыта у бухгалтера в другом городе через RDP?
Попросите завершить работу или завершите его сеанс на терминальном сервере. Для серверной базы сеанс можно отключить в консоли кластера, предупредив пользователя, иначе он потеряет несохранённые данные.
Сколько места освобождает очистка кэша?
Обычно от сотен мегабайт до нескольких гигабайт на пользователя. На терминальном сервере с 20 пользователями и 10 базами набегают десятки гигабайт.