К статье
Практический материал

Администрирование · 11 мин

Как принудительно выгнать пользователя из 1С

Как принудительно выгнать пользователя из 1С: консоль кластера, администрирование сервера, файловая база, завершение сеансов и фоновых заданий без потери данных.

Задача принудительно завершить сеанс пользователя в 1С возникает регулярно: сотрудник ушёл, оставив открытую программу и заблокировав документы; сеанс «завис» и не отвечает; нужно срочно провести обновление конфигурации, требующее монопольного доступа. Способ завершения зависит от режима работы базы — файлового или клиент-серверного — и от того, есть ли у вас права администратора кластера.

Важно понимать разницу между «мягким» и «жёстким» завершением. Мягкое — это штатное закрытие сеанса через консоль кластера или механизмы БСП: платформа корректно завершает транзакции и освобождает ресурсы. Жёсткое — снятие процесса 1cv8.exe через диспетчер задач или перезагрузка сервера. Жёсткое завершение быстрее, но может оставить незавершённые транзакции, разорванные блокировки и, в редких случаях, повредить данные файловой базы.

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

Определите режим работы базы и тип сеанса

Первый шаг — понять, где физически работает база. Откройте список информационных баз в окне запуска 1С и посмотрите строку подключения: если путь выглядит как \\server\base или локальный диск — это файловый режим. Если указано имя сервера и имя базы в кластере (например, Srvr="srv1c";Ref="trade") — клиент-серверный режим.

Далее определите, какие сеансы нужно завершить. В клиент-серверном режиме список виден в консоли кластера: ветка «Сеансы» показывает пользователя, приложение (тонкий клиент, толстый клиент, веб-клиент, фоновое задание, COM-соединение), время начала и активность. В файловом режиме список активных пользователей доступен в типовых конфигурациях через «Администрирование — Обслуживание — Активные пользователи», а также в файле 1Cv8.1CL рядом с базой косвенно отражаются подключения.

Сеанс не отвечаетПризнак зависшего клиента

В консоли кластера долго нет активности, пользователь не может закрыть программу штатно

Блокировка документовДругие пользователи не могут провести документы

Кто держит блокировку — смотрите в списке активных сеансов или в журнале регистрации

Требуется монопольный режимОбновление конфигурации или регламентные операции

Нужно завершить все сеансы и фоновые задания, а затем запретить новые подключения

Фоновое задание завислоРегламентная операция не завершается

Найдите сеанс типа «Фоновое задание» в консоли кластера и завершите именно его

Завершение сеанса через консоль кластера серверов 1С

Это основной и самый безопасный способ для клиент-серверного режима. Консоль кластера устанавливается вместе с сервером 1С и доступна на любом компьютере, где установлены компоненты администрирования.

Порядок завершения сеанса в консоли кластера
  1. 1
    Откройте «Администрирование серверов 1С Предприятия» (консоль кластера) на рабочем месте администратора
  2. 2
    Разверните нужный кластер, затем ветку «Сеансы» внутри информационной базы
  3. 3
    Найдите сеанс нужного пользователя по имени, компьютеру или приложению
  4. 4
    Щёлкните правой кнопкой по сеансу и выберите «Удалить» — сеанс будет завершён принудительно
  5. 5
    Проверьте, что сеанс исчез из списка, а связанные блокировки сняты

Удаление сеанса в консоли — это именно принудительное завершение: клиентское приложение пользователя получит сообщение о разрыве соединения и закроется. Незаписанные данные в открытых формах будут потеряны, поэтому при возможности предупредите пользователя заранее.

Если сеансов много — например, перед обновлением нужно выгнать всех — удаляйте их списком, выделив с зажатой клавишей Shift. Но сначала отключите регламентные задания и установите блокировку сеансов, иначе пользователи и планировщик создадут новые подключения быстрее, чем вы удалите старые.

Завершение фоновых заданий

Фоновые задания отображаются в ветке «Сеансы» с типом «Фоновое задание» и в отдельной ветке «Задания». Зависшее фоновое задание завершается так же — удалением сеанса. Учтите: если задание выполняло запись в базу, прерывание откатит незавершённую транзакцию, что безопасно, но регламентную операцию придётся запустить заново.

Завершение сеансов штатными средствами конфигурации (БСП)

В типовых конфигурациях на базе Библиотеки стандартных подсистем (1С:Бухгалтерия, 1С:ERP, 1С:ЗУП и другие) есть встроенный механизм: «Администрирование — Обслуживание — Активные пользователи». Оттуда администратор с полными правами может завершить сеанс конкретного пользователя, не открывая консоль кластера.

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

Файловая база: как выгнать пользователя без консоли кластера

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

Если база лежит в общей сетевой папке, администратор сервера может закрыть открытые сетевые сеансы: на компьютере, где хранится база, открыть «Управление компьютером — Общие папки — Сеансы» и завершить сеанс нужного пользователя. После этого клиент 1С потеряет доступ к файлу базы и аварийно закроется. Альтернатива — удалённо завершить процесс 1cv8.exe на компьютере пользователя, например через диспетчер задач при физическом доступе или через средства удалённого администрирования.

Монопольный доступ в файловой базе для обновления получают иначе: попросите всех выйти, проверьте, что в папке базы рядом с 1Cv8.1CD нет активных подключений, и запустите конфигуратор. Если кто-то оставил программу открытой, конфигуратор сообщит об ошибке разделения доступа — тогда ищите, чей компьютер держит файл, через «Открытые файлы» в оснастке управления общими ресурсами.

Программное завершение сеансов для регламентных операций

Для автоматизации — например, ночного обновления или резервного копирования — сеансы завершают скриптами. В клиент-серверном режиме используется административный интерфейс: через COM-соединение с агентом кластера (V83.COMConnector и объекты IWorkingProcessConnection/ISession) или через сервер администрирования RAS с консольной утилитой rac.

bash
rac session terminate --cluster=<ID_кластера> --session=<ID_сеанса>

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

Маршрут решения

Как выбрать способ завершения

Клиент-серверная база, нужно выгнать одного пользователяУдалите его сеанс в консоли кластера — это быстро и безопасно
Клиент-серверная база, нужно выгнать всех для обновленияУстановите блокировку сеансов, затем завершите все сеансы и фоновые задания
Файловая база в сетевой папке, пользователь недоступенЗакройте его сетевой сеанс в оснастке «Общие папки» на сервере с базой
Сеанс завис и не удаляется из консолиПроверьте рабочие процессы кластера; в крайнем случае перезапустите службу агента сервера 1С — это завершит все сеансы кластера

Проверка результата и типичные ошибки

После завершения сеанса убедитесь, что цель достигнута: сеанс исчез из списка в консоли, блокировки объектов сняты, монопольный режим устанавливается без ошибок. Если сеанс появился снова через несколько секунд — у пользователя включено автоподключение, работает фоновое задание по расписанию или внешнее приложение держит COM-соединение. В этом случае без блокировки новых подключений задачу не решить.

Контрольные точки

Как проверить результат

Список сеансов в консоли кластера
Норма

Нужный сеанс отсутствует и не пересоздаётся

Тревожный признак

Сеанс появляется снова — ищите источник автоподключения

Журнал регистрации
Норма

Есть запись о завершении сеанса, нет ошибок транзакций

Тревожный признак

Ошибки отката транзакций — проверьте целостность данных

Монопольный режим
Норма

Конфигуратор входит в монопольный режим без сообщений о занятых сеансах

Тревожный признак

Ошибка разделения доступа — остались активные подключения

Типичные ошибки
01
Завершение сеанса без блокировки новых подключений — пользователи заходят обратно, и обновление срывается
02
Снятие процесса 1cv8.exe через диспетчер задач в файловой базе во время записи — риск повреждения файла 1Cv8.1CD
03
Завершение сеанса вместе с выполняющимся фоновым заданием обмена — обмен прерывается на середине, приходится разбирать незавершённые пакеты
04
Отсутствие предупреждения пользователей — потеря несохранённых данных в открытых формах и конфликты с сотрудниками
05
Перезагрузка сервера 1С «для надёжности» вместо точечного завершения сеансов — лишний простой всей системы
Если пользователи регулярно оставляют сеансы открытыми на ночь, настройте в консоли кластера параметры информационной базы: «интервал отключения неактивных сеансов» и «завершать неактивные сеансы». Это избавит от рутинной ручной работы и от проблем с ночными регламентными операциями.
ПЗ
Практическое замечание

Частые вопросы

Увидит ли пользователь, что его сеанс завершили принудительно?

Да. Клиентское приложение покажет сообщение о разрыве соединения с сервером или о завершении сеанса администратором и закроется. Восстановить несохранённые данные в открытых формах после этого нельзя.

Можно ли выгнать пользователя из файловой базы удалённо, не трогая его компьютер?

Да, если база лежит в сетевой папке: на компьютере-хранилище закройте сетевой сеанс пользователя через «Управление компьютером — Общие папки — Сеансы». Если база локальная, удалённо завершить чужой сеанс штатными средствами 1С нельзя.

Сеанс не удаляется из консоли кластера, что делать?

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

Как выгнать всех пользователей перед обновлением конфигурации?

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

Опасно ли принудительное завершение сеанса для данных?

В клиент-серверном режиме СУБД откатит незавершённые транзакции, и целостность данных сохранится. В файловом режиме риск выше: прерывание процесса во время записи может повредить файл базы, поэтому перед жёсткими действиями убедитесь, что у вас есть актуальная резервная копия.

Чем отличается завершение сеанса от завершения соединения?

Соединение — это транспортный канал между клиентом и рабочим процессом, сеанс — логическая сессия пользователя. Удаление сеанса завершает работу пользователя полностью; разрыв соединения без удаления сеанса приведёт к тому, что сеанс останется висеть в списке до истечения тайм-аута.

Итог

Что важно запомнить

В клиент-серверной 1С сеансы завершаются через консоль кластера или механизм «Активные пользователи» в типовых конфигурациях, в файловой — через закрытие сетевых сеансов на уровне ОС. Перед массовым завершением всегда устанавливайте блокировку новых подключений и проверяйте отсутствие активных фоновых заданий. Жёсткое снятие процессов — крайняя мера, допустимая только при наличии резервной копии.