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

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

Как выкинуть всех пользователей из 1С через конфигуратор

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

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

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

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

Когда требуется завершить сеансы пользователей

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

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

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

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

Как выбрать действие

База файловая и нужен монопольный доступЗапросите монопольный режим в конфигураторе и подтвердите завершение сеансов
База клиент-серверная, нужно отключить всех немедленноЗавершите сеансы через консоль кластера серверов
Отключение плановое, пользователи ещё работаютУстановите блокировку соединений с сообщением и дождитесь выхода
Мешает один зависший сеансУдалите только его, не трогая остальные

Монопольный режим в файловой базе

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

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

Если платформа сообщает, что установить монопольный доступ не удалось, проверьте, нет ли открытых сеансов конфигуратора у других администраторов и не запущены ли фоновые процессы, работающие с файлом базы напрямую. Иногда мешает зависший процесс 1cv8.exe на компьютере пользователя — его завершают через диспетчер задач.

Файловая база: порядок действий
  1. 1
    Предупредите пользователей о завершении работы
  2. 2
    Откройте конфигуратор, меню Администрирование → Монопольный режим
  3. 3
    Подтвердите завершение активных сеансов
  4. 4
    Выполните обновление или обслуживание
  5. 5
    Снимите монопольный режим тем же пунктом меню
  6. 6
    Проверьте, что пользователи могут войти

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

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

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

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

Блокировка соединений с базой

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

Сообщение увидит каждый, кто попытается войти в период блокировки — напишите там причину и ориентировочное время окончания работ. Код разрешения позволяет войти в базу в обход блокировки: его указывают в параметре запуска /UC или в строке подключения, и по нему в базу сможет зайти администратор для выполнения обновления.

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

Завершение сеансов из командной строки и пакетный сценарий

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

bash
rac session --cluster=<ID_кластера> list --infobase=<ID_базы>
rac session --cluster=<ID_кластера> terminate --session=<ID_сеанса>

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

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

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

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

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

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

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

Сеансов по базе нет или есть только служебный

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

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

Попытка входа обычного пользователя
Норма

Появляется сообщение о блокировке с текстом администратора

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

Пользователь входит свободно

Обновление конфигурации базы данных
Норма

Выполняется без ошибки монопольного доступа

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

Ошибка о невозможности монопольного доступа

Типичные ошибки
01
Завершить сеансы без блокировки — пользователи входят обратно, и обновление снова падает
02
Забыть снять блокировку после работ — утром никто не может войти в базу
03
Удалить все сеансы кластера вместо сеансов одной базы — пострадают соседние базы
04
Обрывать фоновые задания обмена — получить рассинхронизацию данных между системами
05
Не сохранить код разрешения блокировки — администратор сам не сможет войти в базу

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

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

Отдельной команды «завершить все сеансы» в конфигураторе нет. В файловой базе эту роль выполняет установка монопольного режима с подтверждением завершения сеансов. В клиент-серверной базе конфигуратор вообще не управляет сеансами — используйте консоль кластера или утилиту rac.

Потеряются ли данные пользователей при принудительном завершении сеанса?

Незаписанные в момент отключения данные (открытый, но не проведённый документ, несохранённый отчёт) будут потеряны. Записанные в базу объекты не пострадают: прерванные транзакции откатываются, и целостность данных сохраняется.

Пользователи сразу заходят обратно после отключения. Что делать?

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

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

Используйте код разрешения, заданный при установке блокировки. Его передают параметром запуска /UC<код> в командной строке клиента или указывают в дополнительных параметрах подключения. Без кода в базу не войдёт никто, включая администратора.

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

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

Итог

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

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