Чистим папки 1С без риска: кэш, логи, временные файлы и старые базы

· 10 мин

Содержание

Безопасно удалять в каталогах 1С можно кэш пользователя (папки с GUID-именами в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8), временную папку базы 1Cv8tmp, старые технологические журналы и дампы. Файл 1Cv8.1CD, реестр кластера 1CV8Clst.lst и список баз ibases.v8i руками не трогают. Удалять нужно при закрытой 1С, иначе часть файлов занята, а часть удалится «наполовину».

Частое заблуждение — «папка 1С разрослась, значит, всё лишнее можно стереть». На деле в одном каталоге лежат и мусор, и сама база. Ниже разобрано, что именно удалять в каждой папке, как это сделать в Windows и Linux и что лучше чистить средствами самой программы, а не проводником.

Перед удалением файлов 1С: копия, права и закрытые сеансы

Три проверки до первого нажатия Delete.

  1. Резервная копия. Для файловой базы скопируйте весь каталог базы целиком. Для клиент-серверной — сделайте бэкап СУБД или выгрузку .dt через Администрирование → Выгрузить информационную базу в конфигураторе.
  2. Сеансы. Все пользователи вышли из базы. В клиент-серверном варианте проверьте список сеансов в консоли кластера. Для серверных папок нужно ещё и остановить службу агента сервера 1С.
  3. Права. Каталоги Program Files и srvinfo требуют прав администратора. Кэш в профиле пользователя чистится от имени этого пользователя. На терминальном сервере у каждого пользователя свой профиль и свой кэш.

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

Что можно удалить в каталогах 1С, а что нельзя

Сводная таблица по типовым путям Windows. Для Linux пути даны в разделе про кэш.

ЧтоГде лежитМожно удалить?Что будет
🟢 Кэш клиентапапки с GUID в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8Да, при закрытой 1СПервый запуск базы дольше, настройки форм могут сброситься
🟢 Временные файлы базыпапка 1Cv8tmp в каталоге файловой базыДа, когда в базе никого нетНичего, папка создастся заново
🟢 Технологический журнал и дампыкаталог, заданный в logcfg.xmlДаПропадут данные для разбора старых сбоев
🟡 Журнал регистрации1Cv8Log в каталоге базы или в папке базы внутри srvinfoЛучше сокращать штатноТеряется история действий пользователей
🟡 Старые шаблоны конфигураций%APPDATA%\1C\1cv8\tmpltsДа, если версии не нужны для обновленияОбновиться с этих релизов уже не выйдет
🟡 Кэш серверапапки snccntx… в srvinfo\reg_1541Да, при остановленной службеСервер пересоберёт кэш при старте
🔴 Файл базы1Cv8.1CDНетПотеря всех данных
🔴 Реестр кластера1CV8Clst.lst в srvinfo\reg_1541НетКластер «забудет» все базы
🔴 Список баз%APPDATA%\1C\1CEStart\ibases.v8iНетОкно запуска станет пустым
🔴 Папка версии платформыC:\Program Files\1cv8\8.3.x.xТолько через «Программы и компоненты»Битые ярлыки и ассоциации

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

Как удалить временные файлы и кэш 1С

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

Вручную в Windows

  1. Закройте все окна 1С. В диспетчере задач не должно остаться процессов 1cv8.exe, 1cv8c.exe, 1cv8s.exe.
  2. Нажмите Win+R, введите %APPDATA%\1C\1cv8 и нажмите Enter.
  3. Удалите папки с именами вида a1b2c3d4-… (GUID). Каждая такая папка — кэш одной базы.
  4. Повторите то же для %LOCALAPPDATA%\1C\1cv8.
  5. Файлы и папки с обычными именами (1cv8strt.pfl, 1cv8cmn.pfl, tmplts) не трогайте: там общие настройки и шаблоны.

Если нужно почистить кэш только одной базы, не ищите её GUID. Добавьте в свойствах базы в поле «Дополнительные параметры запуска» ключ /ClearCache, запустите базу один раз и уберите ключ обратно.

Кэш на терминальном сервере

На RDS-сервере кэш лежит в профиле каждого пользователя: C:\Users\<имя>\AppData\Roaming\1C\1cv8 и …\Local\1C\1cv8. Чистить нужно у того, у кого проблема, и только после выхода этого пользователя из 1С. Массовая чистка у всех сразу — задача для скрипта (см. ниже) в нерабочее время.

В Linux

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

# проверить, что 1С не запущена
pgrep -l 1cv8
# посмотреть, сколько занимает кэш
du -sh ~/.1cv8/1C/1cv8/*

Временная папка файловой базы

В каталоге файловой базы рядом с 1Cv8.1CD бывает папка 1Cv8tmp. Платформа складывает туда временные данные при тяжёлых операциях. Если база закрыта у всех, папку можно удалить целиком. Если кто-то работает — файлы заняты, и удаление либо не пройдёт, либо сломает текущую операцию у пользователя.

Удаление файлов информационной базы: файловый и серверный вариант

Здесь ошибка стоит дороже всего. Удалить базу — это не «стереть файл», а пройти два шага: убрать её из списков и только потом освободить место.

Файловая база

  1. Убедитесь, что база действительно не нужна. Уточните у бухгалтерии, не держат ли её как архив прошлых лет.
  2. Сделайте последнюю копию каталога и положите её в архив.
  3. В окне запуска 1С выделите базу и нажмите «Удалить». Это убирает только строку из списка, файлы остаются на диске.
  4. Откройте каталог базы (путь видно внизу окна запуска при выделенной базе) и удалите его целиком.

Никогда не удаляйте 1Cv8.1CD у базы, с которой работают. Каталог базы удаляют целиком и только у базы, которая уже выведена из работы.

Удаление строки из окна запуска на одном компьютере не убирает базу у других пользователей. Если список раздаётся общим файлом .v8i или через сервер списков баз — правьте источник списка.

Клиент-серверная база

В серверном варианте данные лежат не в каталоге 1С, а в базе СУБД (MS SQL Server, PostgreSQL). Удалять их через проводник бессмысленно и опасно.

  1. Откройте консоль администрирования кластера, найдите базу в разделе «Информационные базы».
  2. Убедитесь, что в базе нет сеансов.
  3. Выберите удаление базы. Консоль предложит, что делать с базой СУБД: удалить её, очистить или оставить без изменений.
  4. Если выбрали «оставить» — базу в СУБД потом удаляет администратор СУБД своими средствами, предварительно сделав бэкап.

После удаления из кластера в srvinfo\reg_1541 может остаться папка с GUID этой базы (там журнал регистрации и служебные файлы). Её удаляют при остановленной службе, сверив GUID: он виден в свойствах базы в консоли до удаления. Запишите его заранее.

Как почистить журнал регистрации, техжурнал и кэш сервера

Журнал регистрации

Журнал регистрации лежит в папке 1Cv8Log: у файловой базы — в её каталоге, у серверной — в папке базы внутри srvinfo\reg_1541. За несколько лет он вырастает до десятков гигабайт.

Штатный способ — сократить журнал через конфигуратор:

  1. Откройте базу в конфигураторе.
  2. Перейдите в Администрирование → Настройка журнала регистрации.
  3. Нажмите «Сократить», укажите дату, до которой удалить события.
  4. Отметьте сохранение удаляемых событий в файл, если история может понадобиться для разбора спорных ситуаций.

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

В старом формате журнала (файлы .lgf и .lgp) данные разбиты по периодам, и старые .lgp иногда удаляют вручную при остановленной службе. Файл .lgf при этом оставляют. В новом формате журнал — один файл 1Cv8.lgd, его вручную не режут, только сокращают штатно.

Технологический журнал и дампы

Технологический журнал включают файлом logcfg.xml. Путь к логам задан в нём атрибутом location, а срок хранения в часах — атрибутом history. Если техжурнал забыли выключить после диагностики, он легко съедает весь диск.

  • 📁 Откройте logcfg.xml и посмотрите, куда пишутся логи.
  • 🗑️ Удалите старые подкаталоги с логами — на работу баз это не влияет.
  • ⏱️ Уменьшите history или уберите logcfg.xml, когда диагностика закончена.
  • 💥 Дампы (.mdmp, .dmp) после того, как их отправили на разбор или они больше не нужны, тоже удаляйте.

Кэш сервера 1С

В srvinfo\reg_1541 лежат папки snccntx… — кэш сеансовых данных. Их очистка помогает при зависаниях сеансов и ошибках, которые не уходят после перезапуска клиентов.

  1. Предупредите пользователей и дождитесь их выхода.
  2. Остановите службу агента сервера 1С через services.msc (в Linux — через systemctl stop с именем вашей службы 1С).
  3. Удалите папки snccntx…. Файлы 1CV8Clst.lst, 1CV8Reg.lst и папки с GUID баз не трогайте.
  4. Запустите службу и проверьте вход в базу.

По умолчанию srvinfo в Windows лежит в C:\Program Files\1cv8\srvinfo, в Linux — в /home/usr1cv8/.1cv8/1C/1cv8. Если сервер ставили с другим путём, его видно в параметрах службы.

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

Часть «лишних файлов» на самом деле живёт внутри базы. Проводником их не достать — только программой.

ЗадачаГде в 1СЧто даёт
Сжать файловую базуАдминистрирование → Тестирование и исправление в конфигураторе, флажок сжатия таблиц1Cv8.1CD уменьшается после удаления данных
Удалить помеченные объектыАдминистрирование → Обслуживание в БП 3.0 и других конфигурациях на БСПОсвобождается место от документов и справочников с пометкой удаления
Очистить присоединённые файлыкарточка документа или справочника, закладка с файламиФайлы в томах удаляются вместе с записью
Удалить старые шаблоныокно запуска, «Настройка» → каталоги шаблоновВидно, где лежат шаблоны, папки старых релизов можно удалить

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

«Тестирование и исправление» требует монопольного доступа: все пользователи должны выйти. Перед запуском — копия каталога базы, потому что режим исправления меняет данные.

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

Скрипты и командная строка для регулярной очистки

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

PowerShell: кэш текущего пользователя

if (Get-Process -Name 1cv8* -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:APPDATA\1C\1cv8", "$env:LOCALAPPDATA\1C\1cv8") {
    if (Test-Path $root) {
        Get-ChildItem $root -Directory |
            Where-Object { $_.Name -match $guid } |
            Remove-Item -Recurse -Force
    }
}
Write-Host "Кэш 1С очищен."

Скрипт удаляет только папки с GUID-именами и не трогает настройки и шаблоны. Сначала прогоните его с -WhatIf у Remove-Item, чтобы увидеть, что будет удалено.

CMD: техжурнал старше 7 дней

forfiles /p "D:\1C_logs" /s /m *.log /d -7 /c "cmd /c del @path"

Путь D:\1C_logs замените на тот, что указан в logcfg.xml. Команду удобно повесить на ежедневное задание в планировщике Windows.

Linux: то же самое через find

find /var/log/1c -type f -name "*.log" -mtime +7 -delete

Сначала запустите команду без -delete — она просто выведет список файлов. Каталог /var/log/1c здесь пример, подставьте свой из logcfg.xml.

Перед запуском скрипта очистки
Выполнено: 0 / 5

Облако 1С:Fresh и хостинг: что можно удалить там

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

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

  • 🗂️ присоединённые файлы и помеченные объекты — удаляются в самой программе, как в локальной базе;
  • 💾 выгрузки и резервные копии — управляются в личном кабинете сервиса;
  • 💻 кэш тонкого клиента на вашем компьютере — чистится так же, как описано выше для Windows.

На арендованном сервере (хостинг 1С с доступом по RDP) ситуация похожа на терминальный сервер : свой кэш в профиле чистите сами, а серверные папки и журналы — через поддержку хостинга. Остановить службу 1С на общем сервере вы, скорее всего, не сможете, и пытаться не стоит.

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

Почему после удаления кэша сбросились настройки форм?
Часть пользовательских настроек хранится в кэше клиента. После очистки 1С возвращает вид форм по умолчанию. Настройки, сохранённые в самой базе, остаются.
Файл в папке 1С не удаляется: «используется другим процессом». Что делать?
Значит, 1С или служба сервера ещё работает. Проверьте процессы 1cv8* и ragent/rphost в диспетчере задач. Принудительно завершать их можно только после выхода пользователей.
Можно ли удалить старые версии платформы из Program Files?
Да, но через «Программы и компоненты», а не удалением папки. Оставьте версию, на которой работают базы и сервер, и версию для отката.
Освободится ли место, если удалить документы в 1С?
В файловой базе — не сразу. Размер 1Cv8.1CD уменьшится после «Тестирования и исправления» со сжатием таблиц. В серверной базе место освобождает обслуживание СУБД.
Как вернуть базу, которую удалили из списка, но не с диска?
Нажмите «Добавить» в окне запуска, выберите добавление существующей базы и укажите каталог с 1Cv8.1CD.