Администрирование · 10 мин
Как переместить временные файлы 1С на другой диск
Как перенести временные файлы и папки 1С на другой диск: настройка переменных TEMP, ключ -T, очистка кэша и типичные ошибки при переносе.
Временные файлы 1С накапливаются в папках пользователя и системы: это кэш метаданных, временные таблицы при выгрузке данных, файлы обновления конфигурации, отчёты, сформированные «на лету». По умолчанию всё это лежит на системном диске C:, и при активной работе нескольких пользователей или больших базах объём может достигать десятков гигабайт. Переполнение системного раздела приводит к ошибкам «Недостаточно свободного места на диске», падению сеансов и сбоям обновления.
Перенести временные файлы 1С можно несколькими способами: изменить системные переменные TEMP и TMP, указать отдельный каталог ключом запуска -T, перенастроить каталоги сервера 1С или вынести временные таблицы СУБД. Выбор зависит от режима работы — файловый, клиент-серверный, локальный пользователь или терминальная ферма.
Где 1С хранит временные файлы и что именно переносится
Платформа 1С:Предприятие использует несколько категорий временных данных. Первая — системный кэш метаданных: папки вида 1cv8 в каталоге %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Здесь хранится кэш конфигурации, который ускоряет запуск базы. Вторая категория — собственно временные файлы сеанса: они создаются в каталоге, заданном переменными TEMP и TMP, и имеют имена вида v8_*.tmp. Третья — временные таблицы и служебные файлы при обмене, выгрузке и обновлении.
В клиент-серверном режиме добавляется каталог рабочих процессов сервера 1С (по умолчанию внутри каталога установки, папка srvinfo с подкаталогами reg_1541 и т.п.), где лежат журналы, сеансовые данные и временные файлы кластера. В СУБД (MS SQL, PostgreSQL) временные таблицы хранятся в tempdb или соответствующем табличном пространстве — это отдельная задача, решаемая средствами СУБД.
Важно различать кэш и временные файлы. Кэш метаданных можно безопасно удалить — платформа пересоздаст его при следующем запуске, правда, первый вход в базу займёт больше времени. Временные файлы активного сеанса удалять нельзя: это приведёт к ошибкам в работающей программе.
Способ 1: перенос через переменные среды TEMP и TMP
Самый универсальный способ — изменить пользовательские переменные среды TEMP и TMP. 1С, как и большинство Windows-приложений, берёт путь к временным файлам именно оттуда. Метод подходит для файловых баз и тонкого клиента на локальном компьютере.
Порядок действий: создайте на целевом диске папку, например D:\1CTemp. Откройте «Система» → «Дополнительные параметры системы» → «Переменные среды». В разделе «Переменные среды пользователя» найдите TEMP и TMP, измените значение каждой на новый путь. Перезагрузите компьютер или хотя бы перезайдите в систему — запущенные процессы не подхватят изменения на лету.
- 1Завершите все сеансы 1С и проверьте, что в диспетчере задач нет процессов 1cv8.exe
- 2Создайте на другом диске папку, например D:\1CTemp
- 3Откройте «Переменные среды» и измените TEMP и TMP пользователя на новый путь
- 4Перезагрузите компьютер или выполните повторный вход в систему
- 5Запустите 1С, выполните типовую операцию и убедитесь, что в новой папке появляются файлы v8_*.tmp
Учтите: переменные пользователя действуют только на его сеанс. Если на компьютере работают несколько учётных записей, настройку нужно повторить для каждой. Системные переменные TEMP/TMP менять не обязательно — это влияет на службы и другие программы, и без необходимости лучше не трогать.
Способ 2: ключ запуска -T для отдельной базы или ярлыка
Если переносить временные файлы нужно не глобально, а только для конкретной базы или сценария, удобнее ключ -T в строке запуска. Он задаёт каталог временных файлов только для этого сеанса и не затрагивает настройки системы.
Настройка через список баз: откройте окно запуска 1С, выберите базу, нажмите «Изменить» и на последнем шаге в поле «Дополнительные параметры запуска» укажите -T D:\1CTemp. Либо пропишите ключ в ярлыке: "C:\Program Files\1cv8\...\bin\1cv8.exe" ENTERPRISE /F"путь_к_базе" -T D:\1CTemp.
"C:\Program Files\1cv8\8.3.22.1750\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Trade" -T D:\1CTempЭтот способ хорош для терминальных серверов, где разным группам пользователей выделяют отдельные диски, и для пакетных заданий — например, выгрузки больших баз, когда временные файлы могут занять десятки гигабайт. Ограничение: ключ действует на клиентское приложение, но не на сервер 1С, если база работает в клиент-серверном режиме.
Перенос временных файлов сервера 1С и СУБД
В клиент-серверном варианте основная нагрузка по временным файлам ложится на сервер. Каталог служебных файлов кластера задаётся при создании сервера и хранится в srvinfo. Перенести его можно, остановив службу агента сервера 1С, скопировав папку на новое место и изменив параметр -d в строке запуска службы (редактируется в реестре, ветка службы агента сервера, либо через переустановку службы утилитой sc).
Временные файлы СУБД переносятся отдельно. В MS SQL это файлы tempdb — их расположение меняется через свойства базы tempdb в Management Studio с последующим перезапуском службы SQL Server. В PostgreSQL временные таблицы создаются в tablespace, который можно переназначить параметром temp_tablespaces. Эти операции требуют прав администратора СУБД и планового простоя.
Терминальный сервер и несколько пользователей
На терминальном сервере временные файлы каждого пользователя по умолчанию лежат в его профиле. Перенос через переменные среды выполняется для каждой учётной записи, либо централизованно — через групповые политики (GPO) с подстановкой переменной %USERNAME% в путь, например D:\1CTemp\%USERNAME%. Следите за правами: каждый пользователь должен иметь полный доступ только к своей подпапке.
Очистка старых временных файлов и кэша
После переноса имеет смысл удалить накопленный мусор из старых расположений. В папках %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 можно удалять каталоги с длинными именами-идентификаторами баз — это кэш, он пересоздастся автоматически. В старой папке TEMP файлы вида v8_*.tmp старше текущего сеанса также удаляются безопасно.
Общее правило: чистку выполняют при закрытых сеансах 1С. Если файл занят работающей программой, удаление завершится ошибкой — это нормально, такие файлы просто пропускают. Для регулярной очистки настраивают плановое задание или скрипт, удаляющий файлы старше нескольких дней.
Проверка результата и контрольные точки
После переноса убедитесь, что 1С действительно использует новый каталог. Запустите базу, выполните операцию, создающую временные файлы (например, сформируйте большой отчёт или начните выгрузку), и проверьте содержимое новой папки — там должны появляться файлы v8_*.tmp. Параллельно убедитесь, что старый каталог не растёт.
Как проверить результат
Появляются и исчезают файлы v8_*.tmp
Папка пуста даже при активной работе
Перестало уменьшаться при работе 1С
Продолжает сокращаться — временные файлы пишутся на старое место
Вход в базу и отчёты работают без ошибок
Ошибки доступа или «Недостаточно памяти» при старте
Пользователь создаёт и удаляет файлы вручную
Отказ в доступе при создании файла
Дополнительная проверка — через диспетчер задач или Process Explorer: откройте свойства процесса 1cv8.exe и посмотрите переменные среды процесса. Там должно быть новое значение TEMP. Если видно старое — процесс был запущен до изменения переменных, перезапустите его.
Ограничения и когда перенос не поможет
Перенос временных файлов решает проблему переполнения системного диска, но не ускоряет работу сам по себе. Если целевой диск медленнее системного (например, HDD вместо SSD), отчёты и выгрузки могут даже замедлиться. Обратная ситуация — перенос на быстрый SSD — может дать заметный прирост при тяжёлых операциях.
Не стоит размещать временные файлы на сетевых дисках: платформа интенсивно работает с ними, а сетевая задержка и риск обрыва соединения делают такую схему нестабильной. Также перенос не заменяет настройку сервера 1С и СУБД в клиент-серверном режиме — если узкое место там, менять клиентские TEMP бессмысленно.
Что важно запомнить
Временные файлы клиента 1С переносятся через переменные TEMP/TMP или ключ -T, серверные — через параметр -d службы агента и настройки СУБД. Перед переносом закройте сеансы, создайте папку с правами записи, а после — проверьте, что файлы v8_*.tmp появляются в новом месте. Старый кэш можно удалить, платформа его пересоздаст.
Частые вопросы
Можно ли просто удалить папку 1cv8 из AppData?
Да, при закрытых сеансах 1С. Это кэш метаданных и настроек подключений к базам: платформа создаст его заново при следующем запуске. Первый вход в базу после очистки займёт больше времени. Список баз в стартовом окне при этом сохраняется — он хранится в файле ibases.v8i в той же папке, его можно оставить.
Почему после смены TEMP файлы всё равно пишутся на диск C?
Наиболее частая причина — сеанс 1С или сама Windows-сессия не были перезапущены после изменения переменных. Также проверьте, что изменены именно пользовательские переменные нужной учётной записи, и что в параметрах запуска базы не задан ключ -T со старым путём — он имеет приоритет над переменными среды.
Сколько места резервировать под временные файлы 1С?
Точной нормы нет: объём зависит от размера баз и характера операций. Для обычной работы пользователей обычно достаточно нескольких гигабайт, но выгрузка большой базы, обновление конфигурации или тяжёлые отчёты могут потребовать десятки гигабайт свободного места. Ориентируйтесь на фактическое потребление в пиковые операции и оставляйте запас.
Можно ли разместить временные файлы на RAM-диске?
Технически да, и это ускоряет операции с временными файлами. Но RAM-диск отнимает оперативную память, которой 1С и так потребляет много, а при перезагрузке его содержимое теряется — для критичных длительных операций это риск. Такой вариант оправдан только при заметном избытке памяти и понимании последствий.
Нужно ли переносить временные файлы, если база работает на сервере 1С?
Перенос TEMP на клиентских машинах в клиент-серверном режиме влияет только на клиентские операции. Основная нагрузка — на сервере: там настраивают каталог кластера (srvinfo) и временные структуры СУБД. Оцените, где именно заканчивается место, и переносите соответствующий компонент.