Администрирование · 10 мин
Как сбросить пользователей в 1С и корректно завершить их сеансы
Как сбросить пользователей в 1С: завершение сеансов через консоль кластера, консоль администрирования, код и блокировку базы. Пошагово с рисками и проверкой.
Задача «сбросить пользователей» в 1С возникает регулярно: перед обновлением конфигурации, при необходимости выполнить монопольные операции, при зависших сеансах или когда нужно срочно освободить лицензии. Под «сбросом» обычно понимают принудительное завершение активных сеансов пользователей информационной базы.
Способ зависит от режима работы. В файловой базе сеансы завершаются через встроенную обработку или код, в клиент-серверном варианте — через консоль кластера серверов 1С. Также существуют внешние инструменты: консоль администрирования (rac), сервер администрирования (ras) и стандартная обработка «Блокировка установки соединений с информационной базой» из библиотеки стандартных подсистем.
Важно различать мягкое завершение (пользователи получают предупреждение и завершают работу сами) и принудительный разрыв соединения. Принудительный сброс без предупреждения может привести к потере несохранённых данных у пользователей, поэтому сначала стоит попробовать штатные механизмы оповещения.
Какие способы сброса пользователей существуют
Выбор метода зависит от режима работы базы (файловый или клиент-серверный), наличия прав администратора и срочности задачи. Ниже — основные варианты с их ограничениями.
Сравнение способов
Подходит для клиент-серверных баз; позволяет удалить сеансы и соединения выборочно или все сразу. Требует прав администратора кластера.
Штатный мягкий способ: устанавливает блокировку, просит пользователей выйти и завершает сеансы по расписанию. Работает и в файловом, и в серверном режиме.
Гибкий вариант для автоматизации: завершение сеансов по условию (пользователь, приложение, время). Требует прав на администрирование.
Командная строка для скриптов и плановых операций на сервере. Требует настройки и знания синтаксиса.
Сброс сеансов через консоль кластера серверов
Это основной способ для клиент-серверных баз. Консоль («Администрирование серверов 1С:Предприятия») устанавливается вместе с сервером и доступна в меню «Пуск» на сервере или на машине администратора.
- 1Откройте консоль «Администрирование серверов 1С:Предприятия» и подключитесь к нужному центральному серверу.
- 2Разверните узел «Кластеры» → ваш кластер → «Информационные базы» → нужная база.
- 3Откройте вкладку «Сеансы», чтобы увидеть список активных сеансов с указанием пользователя, приложения и времени начала.
- 4Выделите нужные сеансы (или все через Ctrl+A) и нажмите «Удалить» в контекстном меню.
- 5Если сеансы восстанавливаются, дополнительно удалите соединения на вкладке «Соединения» и установите блокировку сеансов в свойствах базы.
Обратите внимание на различие сеансов и соединений. Сеанс — это логическая сессия пользователя, соединение — физический канал между клиентом и кластером. Если удалить только сеанс, клиентское приложение может создать новый. Поэтому при полном сбросе сначала удаляют сеансы, затем соединения, а чтобы пользователи не подключились снова, устанавливают блокировку начала сеансов в свойствах информационной базы.
Блокировка устанавливается так: правой кнопкой по информационной базе → «Свойства» → установите флажок «Блокировка начала сеансов включена», задайте сообщение для пользователей, время начала и окончания, а также код разрешения. По коду разрешения администратор сможет войти в базу, пока блокировка активна.
Мягкий сброс через обработку блокировки соединений
В конфигурациях на базе библиотеки стандартных подсистем (БСП) есть типовой механизм «Блокировка работы пользователей». Обычно он находится в разделе «Администрирование» → «Обслуживание» → «Блокировка работы пользователей» или «Блокировка установки соединений с информационной базой».
Механизм работает в два этапа. Сначала всем активным пользователям отправляется сообщение с просьбой завершить работу до указанного времени. Затем по наступлении срока оставшиеся сеансы завершаются принудительно, а новые подключения блокируются. Это самый безопасный вариант: у сотрудников есть время сохранить документы.
Сброс пользователей программно, через код
Для автоматизации (например, перед регламентным обновлением) сеансы завершают кодом встроенного языка. Используется метод ПолучитьСеансыИнформационнойБазы(), который возвращает массив объектов с описанием сеансов, у каждого из которых есть метод ЗавершитьСеанс().
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
Если Сеанс.ИмяПриложения <> "Designer"
И Сеанс.Пользователь.Имя <> "Администратор" Тогда
ЗавершитьСеансИнформационнойБазы(Сеанс.НомерСеанса);
КонецЕсли;
КонецЦикла;Типичный сценарий — обработка, которую запускает администратор: она перебирает сеансы, исключает свой собственный и сеансы конфигуратора, и завершает остальные. Обратите внимание: для выполнения требуются административные права, а в клиент-серверном режиме завершение чужих сеансов возможно при наличии права «Администрирование» у пользователя.
Перед завершением полезно записать в журнал регистрации список завершённых сеансов — это поможет разобраться, если у пользователя пропали несохранённые данные.
Сброс через командную строку: rac и ras
Для серверных баз удобно автоматизировать сброс через утилиту администрирования rac. Она входит в состав сервера 1С и позволяет получать список сеансов и завершать их из скриптов, что удобно для ночных регламентных операций.
rac session --cluster=<ID_кластера> terminate --infobase=<ID_базы>Для работы rac извне сервера нужен запущенный сервер администрирования ras. Если скрипт возвращает ошибки доступа, проверьте, что ras запущен, порт доступен, а у учётной записи, от имени которой выполняется команда, есть права администратора кластера или информационной базы.
Особенности файловых баз и зависших сеансов
В файловом режиме консоль кластера недоступна. Зависший сеанс файловой базы часто означает, что на компьютере пользователя остался процесс 1cv8.exe, держащий файл 1Cv8.1CL (файл блокировок). Признак — при входе сообщение о том, что база заблокирована, хотя реально никто не работает.
Порядок действий: найдите компьютер пользователя и завершите процесс 1cv8.exe через диспетчер задач. Если компьютер недоступен (выключен, но блокировка осталась), дождитесь тайм-аута или, при остановленном доступе всех пользователей, удалите файл 1Cv8.1CL из каталога базы. Удалять этот файл можно только когда никто не работает с базой.
Проверка результата и типичные ошибки
Как проверить результат
Список пуст или содержит только сеанс администратора
Сеансы появляются снова — не установлена блокировка или работают фоновые задания
Появляется сообщение о блокировке с вашим текстом
Пользователь входит свободно — блокировка не применилась
Операция запускается без ошибки занятости базы
Сообщение об активных сеансах — остались соединения или фоновые задания
Если после сброса обновление конфигурации всё равно сообщает о занятости базы, проверьте фоновые задания: в консоли кластера они видны как отдельные сеансы с типом «Фоновое задание». Их тоже нужно завершить, а выполнение регламентных заданий — временно заблокировать.
Что важно запомнить
В серверной базе сеансы сбрасываются через консоль кластера, rac или код, в файловой — через обработку БСП и завершение процессов. Всегда предупреждайте пользователей, устанавливайте блокировку новых сеансов, не забывайте про фоновые задания и делайте резервную копию перед регламентными работами.
Частые вопросы
Чем сеанс отличается от соединения в 1С?
Сеанс — это логическая сессия работы пользователя или задания с информационной базой, соединение — физический канал между клиентским приложением и кластером серверов. Один сеанс может существовать без активного соединения (спящий сеанс). При полном сбросе удаляют и то, и другое, иначе клиент восстановит сеанс по живому соединению.
Как сбросить пользователей, если база файловая и консоли кластера нет?
Используйте обработку «Блокировка установки соединений» из состава БСП, если она есть в конфигурации, или завершите процессы 1cv8.exe на компьютерах пользователей. Для разовой изоляции базы можно временно ограничить сетевой доступ к её каталогу.
Пользователей сбросил, а они сразу подключаются снова. Что делать?
Установите блокировку начала сеансов: в консоли кластера — в свойствах информационной базы, в файловом режиме — через обработку блокировки. Также проверьте фоновые и регламентные задания: они создают сеансы автоматически и их нужно отключить отдельно.
Потеряются ли данные пользователей при принудительном завершении сеанса?
Да, несохранённые данные (открытые незаписанные документы, незавершённые формы) будут потеряны. Уже записанные в базу данные не пострадают. Поэтому перед массовым сбросом отправьте пользователям предупреждение и дайте время завершить работу.
Как войти в базу, когда включена блокировка сеансов?
Если при установке блокировки задан код разрешения, укажите его в параметре запуска /UC<код> в командной строке клиента или в дополнительных параметрах запуска в списке баз. Без кода разрешения войти сможет только тот, кто снимет блокировку через консоль кластера.
Можно ли сбросить сеансы по расписанию автоматически?
Да. В клиент-серверном режиме используйте скрипт с утилитой rac, запускаемый планировщиком задач операционной системы. Либо создайте внешнюю обработку с кодом завершения сеансов и запускайте её через регламентные механизмы или планировщик с параметрами запуска 1С.