В администрировании систем на платформе 1С:Предприятие регулярно возникает ситуация, требующая монопольного доступа к данным. Чаще всего это необходимо для проведения регламентных операций: обновления конфигурации, перепроведения документов за период или выполнения сложных обработок исправления данных. В файловом варианте работы базы данных этот процесс имеет свою специфику, отличную от клиент-серверного варианта, и требует от администратора понимания механизмов блокировок.

Основная сложность заключается в том, что файловая база не имеет централизованного менеджера кластера серверов, который мог бы разорвать соединения по команде. Все управление сессиями происходит на уровне операционной системы и самих запущенных процессов rphost или 1cv8.exe. Неправильные действия могут привести к повреждению файлов транзакций или оставлению «битых» блокировок, которые не дадут запустить базу даже после перезагрузки.

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

Штатное завершение сеансов через интерфейс 1С

Самый безопасный и корректный способ разорвать соединения — использовать встроенные средства платформы. Для этого администратор должен обладать полными правами доступа. Зайдите в базу данных в режиме 1С:Предприятие под пользователем с правами на администрирование. Перейдите в меню Администрирование → Активные пользователи. Здесь отобразится список всех подключенных в данный момент сеансов с указанием имени компьютера и длительности работы.

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

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

⚠️ Внимание: При завершении сеансов через интерфейс убедитесь, что пользователи не находятся в процессе проведения критически важных документов (например, закрытия месяца). Принудительный разрыв в этот момент может привести к рассинхронизации регистров.

💡

Перед массовым завершением сеансов отправьте сообщение всем сотрудникам через корпоративный мессенджер с предупреждением о технических работах через 5 минут. Это снизит количество потерянных данных.

Использование монопольного режима в Конфигураторе

Если интерфейс предприятия недоступен или требуется глубокое изменение структуры базы, необходимо использовать режим Конфигуратор. Запуск базы в этом режиме с ключом монопольного использования — надежный способ вытеснить остальных пользователей. При попытке запуска в монопольном режиме система проверит наличие активных подключений.

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

Для автоматизации процесса можно использовать ключи командной строки. Запуск с параметром /F (путь к файловой базе) и /M (монопольный режим) позволяет сразу занять базу. Команда будет выглядеть следующим образом:

"C:\Program Files\1cv8\8.3.22.1234\bin\1cv8.exe" CONFIG /F "C:\Bases\Base1" /M

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

📊 Как вы чаще всего освобождаете базу 1С?
Через меню "Активные пользователи"
Запуском в монопольном режиме
Перезагрузкой сервера
Удалением файлов .lck

Принудительное завершение процессов через Диспетчер задач

В ситуациях, когда платформа не реагирует на команды завершения, приходится вмешиваться на уровне операционной системы Windows. Этот метод является наиболее радикальным и несет определенные риски, поэтому требует внимательности. Вам необходимо открыть Диспетчер задач (Ctrl+Shift+Esc) и перейти на вкладку «Подробности».

Ищите процессы с именами 1cv8.exe (тонкий клиент) и rphost.exe (рабочий процесс сервера или локальный процесс для файловой базы). Для файловой базы ключевым является процесс, который удерживает открытыми файлы базы данных. Обычно это процесс, запущенный от имени того пользователя, который не может закрыть программу.

  • 🔍 Найдите процесс 1cv8.exe, соответствующий зависшему пользователю по имени пользователя или потреблению памяти.
  • 🛑 Нажмите правой кнопкой мыши и выберите «Снять задачу» для клиентского приложения.
  • ⚙️ Если процесс rphost.exe остается активным и блокирует файлы, завершите и его, но только если уверены, что он относится к проблемной базе.
  • 💾 Дождитесь освобождения файловых дескрипторов перед повторным запуском.

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

⚠️ Внимание: Не завершайте процессы ragent.exe или системные службы 1С, если на этом компьютере работают другие важные базы данных. Это приведет к падению всех сеансов на данной машине.

☑️ Безопасное завершение процессов

Выполнено: 0 / 5

Очистка файлов блокировок вручную

Иногда после аварийного отключения электричества или сбоя сети в каталоге информационной базы остаются файлы блокировок, которые система воспринимает как признак активного сеанса. В файловой базе 1С за блокировки отвечают файлы с расширением .lck и служебные файлы в папке 1Cv8Log или корневой папке базы.

Чтобы выгнать «призрачных» пользователей, необходимо физически удалить эти файлы. Зайдите в каталог базы данных через Проводник Windows. Включите отображение скрытых файлов, так как некоторые служебные файлы могут иметь атрибут Hidden. Удалите все файлы с расширением .lck. Также стоит проверить наличие файлов с именами вида 1Cv8.1CD.lock.

После удаления файлов блокировок попробуйте запустить базу. Если проблема была именно в «залипших» флагах, доступ восстановится. Однако, если файлы блокировки появляются снова сразу после запуска, значит, в базе действительно есть активный процесс, который нужно искать через Диспетчер задач, как описано в предыдущем разделе.

Тип файла Назначение Можно ли удалять Риск удаления
*.lck Файл блокировки сеанса Да (если нет активных сеансов) Низкий (снимает блокировку)
1Cv8.1CD Основной файл данных НЕТ Потеря всей базы данных
1Cv8Log Журнал регистрации Нет (нарушит историю) Потеря истории действий
*.tmp Временные файлы Осторожно Средний (может быть активная транзакция)
Что делать, если файлы .lck не удаляются?

Если Windows пишет, что файл занят, значит, процесс 1С все еще держит его открытым. Используйте утилиту Process Explorer от Sysinternals, чтобы найти конкретный хендл и закрыть его, не убивая весь процесс.

Диагностика через Журнал регистрации

Для понимания причин, по которым пользователи не могут быть выгнаны или почему база постоянно блокируется, необходимо анализировать Журнал регистрации. Он содержит детальную информацию о всех событиях в системе, включая ошибки при попытке захвата монопольного режима. Откройте журнал через меню Администрирование → Журнал регистрации.

Фильтруйте события по типу «Ошибка» или «Предупреждение» за последние минуты. Ищите сообщения о неудачных попытках начала транзакции или блокировании таблиц. Часто там можно увидеть имя пользователя или компьютера, который удерживает долгоживущую транзакцию, мешающую другим операциям. Это помогает точечно воздействовать на проблему, а не выгружать всех подряд.

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

💡

Журнал регистрации — единственный источник истины при диагностике причин блокировок. Не действуйте вслепую, сначала проанализируйте логи.

Профилактика проблем с блокировками

Чтобы ситуация «как выгнать пользователей» не возникала каждый день, необходимо настроить регламентные работы правильно. Планируйте обновления и тяжелые обработки на время, когда пользователи гарантированно не работают (обед, конец рабочего дня, выходные). Используйте механизм «Технического перерыва», доступный в некоторых конфигурациях, который блокирует вход новым пользователям, но дает время завершить работу текущим.

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

Также рекомендуется обучать пользователей правилам работы: не оставлять открытыми формы документов на часами, корректно завершать сеанс через меню «Файл → Выход», а не крестиком окна. Культура работы с 1С напрямую влияет на стабильность файловой базы.

⚠️ Внимание: Интерфейсы и названия пунктов меню могут отличаться в зависимости от версии платформы 1С:Предприятие (8.2, 8.3) и конкретной конфигурации (Бухгалтерия, УТ, ЗУП). Всегда сверяйтесь с документацией к вашей версии ПО.

Часто задаваемые вопросы

Можно ли выгнать пользователей, если я забыл пароль администратора?

Без прав администратора через интерфейс 1С завершить чужие сеансы нельзя. Вам придется использовать методы операционной системы: завершать процессы 1cv8.exe в Диспетчере задач или удалять файлы .lck в каталоге базы, предварительно убедившись, что физический доступ к компьютеру с базой у вас есть.

Почему после удаления файлов .lck база все равно пишет «Монопольный режим»?

Это означает, что активный процесс 1С все еще работает в памяти и удерживает файлы базы открытыми на уровне операционной системы. Удаление файлов-флагов не убивает процесс. Найдите и завершите процесс rphost.exe или 1cv8.exe в Диспетчере задач.

Опасно ли снимать задачу 1cv8.exe через Диспетчер задач?

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

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

Если список пуст, но база занята, скорее всего, сессия зависла на уровне ОС. Используйте утилиту Process Explorer, найдите процесс 1С и посмотрите свойства открытых файлов (Handles). Там будет указан путь к файлу базы, который удерживает процесс.

Можно ли автоматически выгонять пользователей по расписанию?

Да, это можно реализовать с помощью внешней обработки или скрипта, который запускается по расписанию Планировщика заданий Windows. Скрипт может подключаться к базе и завершать сеансы, либо убивать процессы через командную строку, но это требует навыков программирования.