При организации многопользовательской работы в файловом варианте базы данных 1С:Предприятие по локальной сети системные администраторы часто сталкиваются со следующей проблемой. Несколько пользователей успешно заходят в программу и работают без каких-либо сбоев. Однако при попытке подключения еще одного (например, третьего) сотрудника у первых двух внезапно появляется критический сбой: «Ошибка доступа к файлу 1Cv8tmp.1CD». Если же этот «проблемный» пользователь заходит в систему первым, остальные при попытке входа получают ошибку: «Существуют активные сеансы работы с данной базой, использующие версию платформы, не поддерживающую совместную работу с этой версией. Не совпадает версия временного файла».
Давайте подробно проанализируем эту ситуацию, выясним технические причины возникновения сбоя совместного доступа и разберем по шагам все проверенные на практике методы решения проблемы.
В файловом режиме работы 1С отсутствует выделенный сервер баз данных (СУБД). Роль координатора транзакций и блокировок выполняет сама платформа, запущенная локально на каждом клиентском компьютере. Для отслеживания текущих подключений и активных сеансов платформа 1С создает во временном каталоге базы данных служебный файл 1Cv8tmp.1CD. Этот файл фактически является временной базой данных блокировок.
Если операционная система хоста, сетевые протоколы или сторонний софт (например, антивирус) некорректно кэшируют или блокируют этот временный файл, то для каждого нового клиента нарушается синхронизация метаданных сеансов. Платформа видит искаженную структуру во временном файле блокировок и интерпретирует это как попытку подключения из несовместимой (устаревшей или иной разрядности) версии платформы. В результате доступ полностью блокируется.
Рассмотрим по шагам комплекс мер для полного устранения этой проблемы.
Самая очевидная и частая причина — это фактическое несовпадение релизов платформы на компьютерах пользователей. Даже если вам кажется, что вы везде установили одну версию, человеческий фактор исключать нельзя. Давайте проведем детальную проверку.
8.3.12.1616). Минимальное различие в последней цифре релиза делает совместную работу невозможной.1cv8.exe. Если у одного пользователя выполняется 32-разрядная версия (обозначается как x86 или *32), а у другого — 64-разрядная (x64), это может провоцировать рассинхронизацию временных файлов в некоторых релизах. Рекомендуем установить одинаковую разрядность платформы на всех ПК.C:\Program Files\1cv8\8.3.12.1616\bin\1cv8.exe). При обновлении платформы или запуске нескольких баз это приведет к ошибкам. Запуск всегда должен выполняться через общий загрузчик 1cestart.exe.Одной из наиболее частых скрытых причин блокировки файла 1Cv8tmp.1CD является работа защитных механизмов антивируса Касперского. Встроенный драйвер шифрования перехватывает сетевые файловые потоки и монополизирует доступ к временной базе данных блокировок 1С. Выясним, как устранить это влияние.
Вариант 1. Отключение компонента шифрования в интерфейсе установки
Вариант 2. Переименование конфликтующего драйвера в безопасном режиме
Если изменение состава компонентов недоступно или не помогло, отключим драйвер шифрования напрямую в системе:
C:\Windows\System32\drivers\.klvfs.sys.klvfs.sys.old.Данный метод является простым и крайне действенным средством, которое помогло автору исходной темы. Перенос базы данных в новую директорию решает сразу три системные проблемы:
Рассмотрим порядок действий для корректного переноса:
C:\1C_Bases\Accounting_New.1Cv8.1CD. Всяческие временные логи, кэш-файлы и старые файлы блокировок переносить категорически не нужно.Даже если пользователи закрыли программу 1С на своих компьютерах, операционная система хоста может продолжать удерживать открытые сетевые сессии к файлам блокировок. Новое подключение при этом будет вызывать конфликты доступа. Для корректного предварительного отключения работающих с базой сотрудников можно применить расширение для принудительного завершения работы пользователей.
Выполним очистку сетевых подключений на ПК-хосте:
compmgmt.msc и нажмите Enter для вызова оснастки «Управление компьютером»..1CD, .1cl, .cdn).Аварийное завершение работы пользователей (например, при отключении света или сбоях сети) оставляет в каталоге базы данных «мусорные» файлы блокировок. Нам необходимо вручную очистить папку базы от служебного мусора.
1cv8.exe и 1cv8c.exe завершены на всех компьютерах.1Cv8tmp.1CD — временная база данных сессий;1Cv8tmp.1cl — файл блокировки временной базы;1Cv8.1cl — основной файл блокировок базы данных;1Cv8.cdn — файл блокировки установки обновлений.1Cv8.1CD! Это единственный файл, в котором хранятся все ваши учетные данные.Если база данных 1С расположена на сетевом хранилище NAS или сервере под управлением Linux (Samba), либо сетевое взаимодействие между Windows-клиентами работает со сбоями, причиной может быть механизм оппортунистических блокировок (Oplocks) протокола SMB v2/v3.
Этот механизм оптимизирует передачу данных путем локального кэширования файлов на клиентской стороне. Однако при одновременной работе с файлом 1Cv8tmp.1CD кэширование приводит к рассинхронизации данных сессий, вызывая ошибку версии временного файла. Рекомендуется отключить данный режим.
На компьютере-сервере Windows откроем консоль PowerShell от имени администратора и выполним следующую команду:
Set-SmbServerConfiguration -EnableOplocks $false -Confirm:$false
На клиентских компьютерах мы также можем отключить кэширование сетевых каталогов через системный реестр Windows. Откроем редактор реестра regedit, перейдем в ветку:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters
Создадим в этой ветке три параметра типа DWORD (32 бита) со значением 0:
FileInfoCacheLifetimeFileNotFoundCacheLifetimeDirectoryCacheLifetimeДля вступления изменений в силу обязательно выполним перезагрузку клиентских рабочих станций.
Если все предыдущие сетевые и программные настройки выполнены корректно, но ошибка доступа к временному файлу сохраняется, возможно, повреждена внутренняя логическая структура самого файла базы данных 1Cv8.1CD. Нам необходимо запустить встроенное средство тестирования и исправления.
1Cv8.1CD, скопировав его на внешний накопитель или в другую папку. Это убережет данные от случайной потери в случае сбоя при тестировании.C:\Program Files\1cv8\Х.Х.Х.Х\bin\ (где Х.Х.Х.Х — номер релиза установленной платформы).chdbfl.exe.1Cv8.1CD.Мы подробно разобрали все технические аспекты возникновения ошибки несовпадения версий временного файла в 1С при совместной работе. В подавляющем большинстве случаев проблема успешно решается переносом базы данных в новую папку с настройкой прав доступа «Всем», точечной настройкой исключений антивирусного ПО и приведением версий платформ 1С на всех компьютерах пользователей к единому релизу и разрядности. Последовательное выполнение предложенных нами шагов гарантированно вернет вашу информационную систему в штатный режим работы.