Администрирование · 11 мин
Как перенести кэш 1С на другой диск
Разбираемся, как перенести кэш 1С на другой диск: настройка конфигурационных файлов, символические ссылки, очистка старых данных и проверка результата.
Кэш 1С — это служебные файлы, которые платформа создаёт для ускорения запуска и работы информационных баз. По умолчанию он лежит в профиле пользователя на системном диске C, и при активной работе с крупными базами может занимать десятки гигабайт. Когда системный диск переполняется, компьютер начинает тормозить, а 1С — выдавать ошибки при обновлении конфигурации или запуске клиента.
Перенести кэш на другой диск можно несколькими способами: через параметры запуска информационной базы, правку конфигурационного файла conf.cfg или с помощью символической ссылки. Выбор зависит от того, нужно ли перенести кэш для одной базы или для всех баз пользователя, и есть ли у вас права администратора.
Важно понимать: сам кэш не содержит уникальных данных, его можно безопасно удалять — платформа создаст файлы заново при следующем запуске. Поэтому задача сводится к тому, чтобы указать 1С новое расположение и убедиться, что старые каталоги больше не растут.
Где 1С хранит кэш и зачем его переносить
По умолчанию платформа 1С:Предприятие размещает кэш метаданных в профиле пользователя Windows. Для файловых и клиент-серверных баз пути немного различаются, но обычно это каталоги вида C:\Users\Имя\AppData\Roaming\1C\1cv8 и C:\Users\Имя\AppData\Local\1C\1cv8. Внутри находятся папки с длинными именами — идентификаторами информационных баз.
Размер кэша зависит от объёма конфигурации: у типовой бухгалтерии это обычно сотни мегабайт, у крупных конфигураций вроде ERP — несколько гигабайт на каждую базу. Если на компьютере работают несколько пользователей или подключено много баз, суммарный объём быстро съедает свободное место на диске C.
Перенос кэша оправдан в трёх ситуациях: системный диск мал и переполняется; профили пользователей хранятся на медленном диске, а рядом есть быстрый SSD; в терминальной среде нужно вынести кэш из перемещаемых профилей, чтобы он не копировался при каждом входе. Если места достаточно и скорость устраивает, перенос ничего не даст.
Подготовка перед переносом
Первый шаг — завершить все сеансы 1С. Пока клиент запущен, часть файлов кэша заблокирована, и изменение настроек может привести к ошибкам или созданию кэша сразу в двух местах. Проверьте диспетчер задач: процессов 1cv8.exe и 1cv8c.exe быть не должно.
Второй шаг — создать целевой каталог на другом диске, например D:\1CCache. Убедитесь, что у пользователя есть полные права на эту папку: 1С должна свободно создавать и удалять в ней файлы. Не размещайте кэш на сетевом диске — это резко замедлит запуск и может вызвать ошибки блокировок.
Третий шаг — зафиксировать текущий объём кэша. Откройте каталоги AppData\Roaming\1C и AppData\Local\1C, посмотрите размер. Это понадобится потом, чтобы убедиться, что старые файлы действительно удалены, а новые создаются в целевом каталоге.
Способ 1: параметр запуска информационной базы
Самый простой вариант для отдельной базы — указать каталог кэша в параметрах запуска. В списке информационных баз выберите нужную базу, нажмите «Изменить» и пройдите до последней страницы настроек. В поле «Дополнительные параметры запуска» добавьте параметр /D с путём к новому каталогу.
Параметр выглядит так: /D"D:\1CCache\Бухгалтерия". Для каждой базы лучше задавать отдельный подкаталог — так проще очищать кэш конкретной базы и не возникнет путаницы при одинаковых конфигурациях.
Этот способ удобен, когда перенести кэш нужно только для одной-двух «тяжёлых» баз, а остальные могут работать по-старому. Минус — настройка привязана к конкретной записи в списке баз: если пользователь добавит базу заново, параметр придётся указывать снова.
- 1Закройте все сеансы 1С и создайте каталог, например D:\1CCache\ИмяБазы
- 2Откройте список информационных баз, выберите базу и нажмите «Изменить»
- 3На последней странице в поле «Дополнительные параметры запуска» введите /D"D:\1CCache\ИмяБазы"
- 4Сохраните настройки и запустите базу
- 5Проверьте, что в новом каталоге появились служебные файлы, а старый кэш можно удалить
Способ 2: конфигурационный файл conf.cfg
Если кэш нужно перенести для всех баз сразу, удобнее файл conf.cfg. Это текстовый конфигурационный файл платформы, который может лежать в каталоге conf установленной версии платформы (например, C:\Program Files\1cv8\номер_версии\bin\conf\conf.cfg) или в каталоге C:\ProgramData\1C\1cv8\conf — тогда настройка действует на все версии.
Откройте файл в блокноте с правами администратора и добавьте строку с директивой расположения системных файлов. Синтаксис: SystemFilesInfoLocation=D:\1CCache. Сохраните файл и запустите 1С — платформа начнёт использовать указанный каталог для служебных данных.
Учтите ограничение: файл в каталоге Program Files действует только на конкретную версию платформы. После обновления платформы настройку придётся повторить, если вы не используете вариант с ProgramData. Для терминальных серверов и нескольких пользователей вариант с общим conf.cfg в ProgramData обычно удобнее.
SystemFilesInfoLocation=D:\1CCacheСпособ 3: символическая ссылка
Третий вариант — оставить платформу в покое и перенаправить сам каталог. Windows позволяет создать символическую ссылку: папка в AppData остаётся на месте, но физически файлы хранятся на другом диске. Для 1С это полностью прозрачно.
Порядок такой: закройте 1С, перенесите содержимое каталога кэша (или просто удалите его) на новый диск, затем запустите командную строку от имени администратора и выполните команду mklink. Ссылка создаётся на каталог, поэтому исходную папку в AppData нужно предварительно удалить или переименовать.
Этот способ хорош тем, что работает для любых программ и не зависит от версий платформы и настроек баз. Минус — требуются права администратора, а при пересоздании профиля пользователя ссылку придётся создавать заново.
mklink /D "C:\Users\Имя\AppData\Roaming\1C\1cv8" "D:\1CCache\1cv8"Сравнение способов переноса
Каждый метод решает свою задачу, и универсального «правильного» варианта нет. Выбор зависит от количества баз, наличия прав администратора и того, насколько долговременное решение вам нужно.
Сравнение способов переноса кэша
Подходит для одной-двух баз, не требует прав администратора. Ограничение: настройка теряется при повторном добавлении базы в список.
Действует на все базы пользователя или компьютера. Ограничение: при размещении в каталоге версии платформы настройку нужно повторять после обновления.
Прозрачна для платформы, не зависит от версий и настроек. Ограничение: требует прав администратора и аккуратности при удалении старого каталога.
На практике администраторы чаще всего комбинируют: для изолированных «тяжёлых» баз задают параметр запуска, а массовый перенос на терминальном сервере делают через conf.cfg или ссылки. Для домашнего компьютера с одной базой проще всего символическая ссылка — один раз настроил и забыл.
Очистка старого кэша и проверка результата
После настройки нового расположения старый кэш никуда не денется сам — его нужно удалить вручную. Закройте 1С, перейдите в каталоги AppData\Roaming\1C\1cv8 и AppData\Local\1C\1cv8 и удалите папки с идентификаторами баз. Если вы использовали символическую ссылку, удаляйте только содержимое по новому пути, саму ссылку трогать нельзя.
Затем запустите базу и проверьте результат. В новом каталоге должны появиться свежие файлы с текущей датой изменения, а старые каталоги не должны расти. Первый запуск после переноса может занять больше времени — платформа заново строит кэш метаданных, это нормально.
Как проверить результат
После запуска базы появились папки и файлы с текущей датой
Каталог пуст — 1С продолжает писать кэш в старое место
Не растёт после нескольких запусков базы
Появляются новые файлы — настройка не применилась
База открывается, ошибок о недоступности файлов нет
Ошибки доступа — проверьте права на целевой каталог
Типичные ошибки и ограничения
Самая частая ошибка — перенос кэша при запущенной 1С. Файлы оказываются заблокированы, часть настроек не применяется, и в итоге кэш создаётся в двух местах одновременно. Всегда закрывайте все сеансы и проверяйте диспетчер задач.
Вторая ошибка — отсутствие прав на целевой каталог. Если пользователь не может писать в D:\1CCache, платформа либо выдаст ошибку, либо молча вернётся к каталогу по умолчанию. Проверяйте права заранее, особенно на терминальных серверах.
Третья группа проблем — антивирусы и системы резервного копирования. Активное сканирование каталога кэша замедляет запуск 1С, а попытки бэкапить кэш бессмысленны: он пересоздаётся автоматически. Каталог кэша разумно добавить в исключения антивируса и исключить из резервных копий.
Ещё одно ограничение касается серверного кэша. Всё описанное относится к клиентскому кэшу на компьютере пользователя. Кэш сервера 1С:Предприятия (каталог srvinfo и его подкаталоги) переносится иначе — через остановку службы агента сервера и перенастройку его параметров, и это отдельная задача, требующая планового простоя.
Частые вопросы
Можно ли просто удалить кэш 1С, не перенося его?
Да, удаление клиентского кэша полностью безопасно — платформа создаст его заново при следующем запуске. Данные информационной базы не пострадают. Единственное следствие — первый запуск займёт больше времени. Это стандартный приём при ошибках вида «ошибка формата потока».
Ускорит ли перенос кэша на SSD работу 1С?
Если кэш был на медленном HDD, а вы перенесли его на SSD, запуск баз и обновление конфигурации заметно ускорятся. Если же и раньше всё лежало на SSD, разницы не будет. Перенос с быстрого диска на медленный, наоборот, замедлит работу.
Что делать, если после переноса 1С не запускается?
Сначала проверьте права на новый каталог — у пользователя должно быть полное разрешение на запись. Затем убедитесь, что диск доступен и не переполнен. Если ошибка сохраняется, удалите настройку переноса (параметр /D, строку в conf.cfg или ссылку) и запустите базу с расположением по умолчанию — это вернёт рабочее состояние.
Нужно ли переносить кэш каждому пользователю терминального сервера?
Настройки через conf.cfg в каталоге ProgramData действуют для всех пользователей сервера сразу. Символические ссылки придётся создавать в профиле каждого пользователя отдельно. Для терминальной среды вариант с conf.cfg обычно удобнее и проще в сопровождении.
Как часто нужно чистить кэш после переноса?
Специально чистить кэш регулярно не нужно — платформа сама управляет его актуальностью. Удалять кэш стоит при ошибках запуска, после смены конфигурации на другую версию и когда накапливаются каталоги от давно удалённых баз. Многие администраторы делают это по расписанию скриптом.
Переносится ли кэш вместе с базой при переезде на другой компьютер?
Нет, и переносить его не нужно. При подключении базы на новом компьютере платформа создаст кэш заново автоматически. Копировать каталоги кэша между машинами бессмысленно и иногда вредно — устаревший кэш может вызывать ошибки несоответствия версий.
Что важно запомнить
Кэш 1С переносится тремя способами: параметром /D для отдельной базы, директивой SystemFilesInfoLocation в conf.cfg для всех баз или символической ссылкой mklink. Всегда закрывайте 1С перед настройкой, используйте только локальные диски, проверяйте права на целевой каталог и после переноса удаляйте старый кэш, контролируя, что новый создаётся в нужном месте.