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

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

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

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

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

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

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

Когда требуется принудительное отключение и чем оно рискованно

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

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

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

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

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

Порядок действий в консоли кластера
  1. 1
    Откройте консоль администрирования серверов 1С и разверните нужный кластер
  2. 2
    Откройте свойства информационной базы
  3. 3
    Установите флаг «Блокировка начала сеансов включена», задайте сообщение для пользователей и при необходимости код разрешения
  4. 4
    Сохраните свойства базы
  5. 5
    В разделе «Сеансы» отфильтруйте список по базе и удалите все сеансы (кроме своего административного, если он нужен)
  6. 6
    Проверьте, что список сеансов пуст и новые не появляются

В свойствах базы полезно заполнить поле «Сообщение» — его увидят пользователи при попытке входа, например: «Идёт обновление, база будет доступна после 15:00». Параметр «Код разрешения» позволяет администратору зайти в базу во время блокировки: этот код добавляется в строку подключения через параметр /UC.

Блокировка сеансов через конфигуратор и из режима предприятия

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

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

Завершение зависших процессов в файловом режиме

Если пользователь ушёл, а его сеанс в файловой базе «висит», найдите компьютер, с которого открыто соединение (список активных пользователей виден в конфигураторе: «Администрирование» → «Активные пользователи»). Затем на этом компьютере завершите процесс 1cv8.exe через диспетчер задач или удалённо командой taskkill.

cmd
taskkill /S ИМЯ_КОМПЬЮТЕРА /IM 1cv8.exe /F

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

Для регулярных операций (ночное обновление, регламентная копия) удобно автоматизировать отключение. Два распространённых подхода: утилита rac из состава сервера 1С и PowerShell-модуль для работы с агентом кластера.

Через rac можно программно установить блокировку и удалить сеансы. Пример логики: сначала команда infobase update с параметром --sessions-deny=on, затем session terminate для каждого активного сеанса базы. Это позволяет встроить отключение пользователей в скрипт обновления.

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

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

Как проверить, что все пользователи отключены

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

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

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

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

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

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

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

Появляются новые сеансы — блокировка не включена

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

Устанавливается без ошибок

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

Ошибка «база занята» — остались соединения или фоновые задания

Фоновые задания
Норма

Нет выполняющихся заданий по базе

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

Задание выполняется — его сеанс держит базу

Типичные ошибки при принудительном отключении

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

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

Итог

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

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

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

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

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

Что будет с несохранёнными документами пользователей?

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

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

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

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

Тем же способом — через консоль кластера: веб-клиенты и тонкие клиенты через веб-сервер создают обычные сеансы на кластере и удаляются стандартно. Дополнительно можно временно остановить публикацию, но обычно достаточно блокировки сеансов.

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

Да. Напишите скрипт с использованием утилиты rac или PowerShell, который устанавливает блокировку и завершает сеансы, и запускайте его через планировщик задач Windows перед регламентными операциями. Обязательно добавьте в скрипт снятие блокировки после завершения работ.

Чем блокировка сеансов отличается от монопольного режима?

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