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

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

Как отключить активных пользователей в 1С

Подробная инструкция, как отключить активных пользователей в 1С: консоль кластера, администрирование сервера, блокировка сеансов, типичные ошибки и FAQ.

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

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

Как определить, кто сейчас работает в базе

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

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

Отключение пользователей через консоль кластера серверов 1С

Это основной способ для клиент-серверных баз. Откройте консоль администрирования серверов, перейдите в «Кластеры → Локальный кластер → Сеансы», выделите нужные сеансы (через Ctrl можно выбрать несколько) и нажмите «Удалить» в контекстном меню или на панели инструментов. Сеанс завершится принудительно, у пользователя на экране появится сообщение о разрыве соединения с сервером.

Удалять сеансы можно и из ветки «Информационные базы → имя базы → Сеансы» — так вы отфильтруете только пользователей конкретной базы, если на сервере их несколько. Несохранённые данные пользователя при таком отключении будут потеряны, поэтому перед массовым завершением сеансов лучше предупредить сотрудников.

Порядок отключения через консоль кластера
  1. 1
    Откройте консоль «Администрирование серверов 1С Предприятия» на сервере или с административного компьютера
  2. 2
    Раскройте «Кластеры → Локальный кластер → Сеансы» и найдите нужные сеансы
  3. 3
    Выделите сеансы и выберите «Удалить» в контекстном меню
  4. 4
    Проверьте, что сеансы исчезли из списка, а пользователи получили сообщение о разрыве соединения

Блокировка сеансов: мягкий способ вывести всех из базы

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

Кнопка «Установить блокировку» дополнительно предлагает завершить активные сеансы: пользователи получат предупреждение, и через заданный интервал их работа будет завершена. Это безопаснее прямого удаления сеансов, потому что даёт сотрудникам время сохранить данные.

В клиент-серверном режиме блокировку можно задать и через консоль кластера: свойства информационной базы → параметры блокировки сеансов, сообщение и код разрешения. Этот способ работает даже для конфигураций без встроенной подсистемы блокировки, но не завершает уже открытые сеансы — только запрещает новые.

Сравнение способов отключения

Удаление сеанса в консоли кластера

Мгновенное принудительное отключение. Подходит для зависших сеансов. Несохранённые данные теряются.

Блокировка работы пользователей

Плавное завершение с предупреждением и запретом новых входов. Лучший вариант перед обновлением. Требует подсистемы БСП или настройки в консоли.

Остановка службы сервера 1С

Отключает все базы сразу. Радикально, применяется только при обслуживании всего сервера.

Отключение пользователей в файловой базе

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

Второй вариант — удалить или переименовать служебный файл 1Cv8.cdn в каталоге базы: через него новые клиенты подключаются к базе по сети, и его отсутствие блокирует новые подключения. Уже работающих пользователей это не отключит — их придётся попросить выйти или завершить процесс 1cv8.exe на их компьютерах (через диспетчер задач, удалённо через taskkill или PowerShell, если у вас есть права администратора домена).

Программное завершение сеансов через COM и RAC

Для автоматизации (например, ночного обновления по расписанию) используют консольную утилиту rac из состава сервера 1С. Она позволяет получить список сеансов и завершить их командой session terminate. Это удобно встраивать в скрипты обслуживания вместе с установкой блокировки сеансов.

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

Альтернатива — COM-коннектор V83.COMConnector: скрипт подключается к агенту сервера, перебирает сеансы рабочих процессов и вызывает метод TerminateSession. Такой подход требует учётной записи с правами администратора кластера и аккуратной обработки ошибок, но позволяет гибко фильтровать сеансы по базе, пользователю или типу приложения, не трогая, например, фоновые задания синхронизации.

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

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

Типичные ошибки
01
Удаление сеансов без блокировки — пользователи сразу переподключаются, и монопольный режим снова недоступен
02
Отключение фоновых заданий синхронизации и обмена — после этого обмены останавливаются и требуют ручного перезапуска
03
Завершение процесса 1cv8.exe через диспетчер задач вместо штатных средств — возможны «висячие» соединения и блокировки на SQL-сервере
04
Попытка отключить пользователей файловой базы через консоль кластера — консоль работает только с клиент-серверными базами

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

Итог

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

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

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

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

Да. В консоли кластера серверов 1С откройте список сеансов, найдите сеанс нужного пользователя по имени и удалите только его. Остальные сеансы продолжат работать без перерыва.

Что увидит пользователь при принудительном отключении?

При удалении сеанса в консоли кластера клиент получит сообщение о разрыве соединения с сервером, и программа закроется. Несохранённые данные (незаписанные документы, введённый текст) будут потеряны, поэтому при плановых работах лучше использовать блокировку с предупреждением.

Как войти в базу, если включена блокировка сеансов?

При запуске базы укажите код разблокировки. В типовых конфигурациях это делается через параметр запуска /UC с кодом или через форму ввода кода, которая появляется при попытке входа в заблокированную базу.

Почему после отключения пользователей обновление всё равно не запускается?

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

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

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