Администрирование · 11 мин
Как принудительно выгнать пользователя из 1С
Как принудительно выгнать пользователя из 1С: консоль кластера, администрирование сервера, файловая база, завершение сеансов и фоновых заданий без потери данных.
Задача принудительно завершить сеанс пользователя в 1С возникает регулярно: сотрудник ушёл, оставив открытую программу и заблокировав документы; сеанс «завис» и не отвечает; нужно срочно провести обновление конфигурации, требующее монопольного доступа. Способ завершения зависит от режима работы базы — файлового или клиент-серверного — и от того, есть ли у вас права администратора кластера.
Важно понимать разницу между «мягким» и «жёстким» завершением. Мягкое — это штатное закрытие сеанса через консоль кластера или механизмы БСП: платформа корректно завершает транзакции и освобождает ресурсы. Жёсткое — снятие процесса 1cv8.exe через диспетчер задач или перезагрузка сервера. Жёсткое завершение быстрее, но может оставить незавершённые транзакции, разорванные блокировки и, в редких случаях, повредить данные файловой базы.
Ниже разобраны рабочие способы для обоих режимов, порядок действий при обновлении конфигурации и типичные ошибки администраторов.
Определите режим работы базы и тип сеанса
Первый шаг — понять, где физически работает база. Откройте список информационных баз в окне запуска 1С и посмотрите строку подключения: если путь выглядит как \\server\base или локальный диск — это файловый режим. Если указано имя сервера и имя базы в кластере (например, Srvr="srv1c";Ref="trade") — клиент-серверный режим.
Далее определите, какие сеансы нужно завершить. В клиент-серверном режиме список виден в консоли кластера: ветка «Сеансы» показывает пользователя, приложение (тонкий клиент, толстый клиент, веб-клиент, фоновое задание, COM-соединение), время начала и активность. В файловом режиме список активных пользователей доступен в типовых конфигурациях через «Администрирование — Обслуживание — Активные пользователи», а также в файле 1Cv8.1CL рядом с базой косвенно отражаются подключения.
В консоли кластера долго нет активности, пользователь не может закрыть программу штатно
Кто держит блокировку — смотрите в списке активных сеансов или в журнале регистрации
Нужно завершить все сеансы и фоновые задания, а затем запретить новые подключения
Найдите сеанс типа «Фоновое задание» в консоли кластера и завершите именно его
Завершение сеанса через консоль кластера серверов 1С
Это основной и самый безопасный способ для клиент-серверного режима. Консоль кластера устанавливается вместе с сервером 1С и доступна на любом компьютере, где установлены компоненты администрирования.
- 1Откройте «Администрирование серверов 1С Предприятия» (консоль кластера) на рабочем месте администратора
- 2Разверните нужный кластер, затем ветку «Сеансы» внутри информационной базы
- 3Найдите сеанс нужного пользователя по имени, компьютеру или приложению
- 4Щёлкните правой кнопкой по сеансу и выберите «Удалить» — сеанс будет завершён принудительно
- 5Проверьте, что сеанс исчез из списка, а связанные блокировки сняты
Удаление сеанса в консоли — это именно принудительное завершение: клиентское приложение пользователя получит сообщение о разрыве соединения и закроется. Незаписанные данные в открытых формах будут потеряны, поэтому при возможности предупредите пользователя заранее.
Если сеансов много — например, перед обновлением нужно выгнать всех — удаляйте их списком, выделив с зажатой клавишей Shift. Но сначала отключите регламентные задания и установите блокировку сеансов, иначе пользователи и планировщик создадут новые подключения быстрее, чем вы удалите старые.
Завершение фоновых заданий
Фоновые задания отображаются в ветке «Сеансы» с типом «Фоновое задание» и в отдельной ветке «Задания». Зависшее фоновое задание завершается так же — удалением сеанса. Учтите: если задание выполняло запись в базу, прерывание откатит незавершённую транзакцию, что безопасно, но регламентную операцию придётся запустить заново.
Завершение сеансов штатными средствами конфигурации (БСП)
В типовых конфигурациях на базе Библиотеки стандартных подсистем (1С:Бухгалтерия, 1С:ERP, 1С:ЗУП и другие) есть встроенный механизм: «Администрирование — Обслуживание — Активные пользователи». Оттуда администратор с полными правами может завершить сеанс конкретного пользователя, не открывая консоль кластера.
Там же находится обработка «Блокировка сеансов с информационной базой»: она устанавливает период, в течение которого новые подключения запрещены, и позволяет задать сообщение, которое увидят пользователи. Стандартный сценарий перед обновлением выглядит так: установить блокировку на будущее время, дождаться завершения сеансов (или завершить их принудительно), выполнить обновление, снять блокировку.
Файловая база: как выгнать пользователя без консоли кластера
В файловом режиме централизованного механизма завершения сеансов нет: каждый пользователь работает с файлом базы напрямую со своего компьютера. Поэтому «выгнать» кого-то можно только внешними средствами операционной системы.
Если база лежит в общей сетевой папке, администратор сервера может закрыть открытые сетевые сеансы: на компьютере, где хранится база, открыть «Управление компьютером — Общие папки — Сеансы» и завершить сеанс нужного пользователя. После этого клиент 1С потеряет доступ к файлу базы и аварийно закроется. Альтернатива — удалённо завершить процесс 1cv8.exe на компьютере пользователя, например через диспетчер задач при физическом доступе или через средства удалённого администрирования.
Монопольный доступ в файловой базе для обновления получают иначе: попросите всех выйти, проверьте, что в папке базы рядом с 1Cv8.1CD нет активных подключений, и запустите конфигуратор. Если кто-то оставил программу открытой, конфигуратор сообщит об ошибке разделения доступа — тогда ищите, чей компьютер держит файл, через «Открытые файлы» в оснастке управления общими ресурсами.
Программное завершение сеансов для регламентных операций
Для автоматизации — например, ночного обновления или резервного копирования — сеансы завершают скриптами. В клиент-серверном режиме используется административный интерфейс: через COM-соединение с агентом кластера (V83.COMConnector и объекты IWorkingProcessConnection/ISession) или через сервер администрирования RAS с консольной утилитой rac.
rac session terminate --cluster=<ID_кластера> --session=<ID_сеанса>Типовой сценарий скрипта: установить блокировку сеансов с кодом разрешения, подождать заданный интервал, завершить оставшиеся сеансы, выполнить операцию, снять блокировку. В типовых конфигурациях часть этой логики уже реализована в подсистеме обновления, и многие администраторы используют её в связке с пакетным режимом конфигуратора.
Как выбрать способ завершения
Проверка результата и типичные ошибки
После завершения сеанса убедитесь, что цель достигнута: сеанс исчез из списка в консоли, блокировки объектов сняты, монопольный режим устанавливается без ошибок. Если сеанс появился снова через несколько секунд — у пользователя включено автоподключение, работает фоновое задание по расписанию или внешнее приложение держит COM-соединение. В этом случае без блокировки новых подключений задачу не решить.
Как проверить результат
Нужный сеанс отсутствует и не пересоздаётся
Сеанс появляется снова — ищите источник автоподключения
Есть запись о завершении сеанса, нет ошибок транзакций
Ошибки отката транзакций — проверьте целостность данных
Конфигуратор входит в монопольный режим без сообщений о занятых сеансах
Ошибка разделения доступа — остались активные подключения
Если пользователи регулярно оставляют сеансы открытыми на ночь, настройте в консоли кластера параметры информационной базы: «интервал отключения неактивных сеансов» и «завершать неактивные сеансы». Это избавит от рутинной ручной работы и от проблем с ночными регламентными операциями.
Частые вопросы
Увидит ли пользователь, что его сеанс завершили принудительно?
Да. Клиентское приложение покажет сообщение о разрыве соединения с сервером или о завершении сеанса администратором и закроется. Восстановить несохранённые данные в открытых формах после этого нельзя.
Можно ли выгнать пользователя из файловой базы удалённо, не трогая его компьютер?
Да, если база лежит в сетевой папке: на компьютере-хранилище закройте сетевой сеанс пользователя через «Управление компьютером — Общие папки — Сеансы». Если база локальная, удалённо завершить чужой сеанс штатными средствами 1С нельзя.
Сеанс не удаляется из консоли кластера, что делать?
Такое бывает при «зависших» рабочих процессах. Попробуйте завершить сеанс повторно через несколько минут. Если не помогает — перезапустите службу агента сервера 1С, но учтите, что это завершит все сеансы всех баз кластера, поэтому делайте это в нерабочее время.
Как выгнать всех пользователей перед обновлением конфигурации?
Установите блокировку сеансов (в типовых конфигурациях — «Блокировка сеансов с информационной базой»), затем завершите все сеансы и фоновые задания в консоли кластера. После обновления снимите блокировку. Без блокировки пользователи будут переподключаться быстрее, чем вы их удаляете.
Опасно ли принудительное завершение сеанса для данных?
В клиент-серверном режиме СУБД откатит незавершённые транзакции, и целостность данных сохранится. В файловом режиме риск выше: прерывание процесса во время записи может повредить файл базы, поэтому перед жёсткими действиями убедитесь, что у вас есть актуальная резервная копия.
Чем отличается завершение сеанса от завершения соединения?
Соединение — это транспортный канал между клиентом и рабочим процессом, сеанс — логическая сессия пользователя. Удаление сеанса завершает работу пользователя полностью; разрыв соединения без удаления сеанса приведёт к тому, что сеанс останется висеть в списке до истечения тайм-аута.
Что важно запомнить
В клиент-серверной 1С сеансы завершаются через консоль кластера или механизм «Активные пользователи» в типовых конфигурациях, в файловой — через закрытие сетевых сеансов на уровне ОС. Перед массовым завершением всегда устанавливайте блокировку новых подключений и проверяйте отсутствие активных фоновых заданий. Жёсткое снятие процессов — крайняя мера, допустимая только при наличии резервной копии.