Администрирование · 10 мин
Как отключить всех пользователей в 1С
Как отключить всех пользователей в 1С: консоль кластера, конфигуратор, завершение сеансов в файловой базе. Безопасные способы и типичные ошибки.
Отключить всех пользователей в 1С требуется перед обновлением конфигурации, восстановлением базы из резервной копии, переносом данных или техническим обслуживанием сервера. Пока в базе есть активные сеансы, многие административные операции блокируются: конфигуратор отказывается обновлять конфигурацию базы данных, а монопольный режим не устанавливается.
Способ отключения зависит от режима работы базы. Для клиент-серверного варианта основной инструмент — консоль кластера серверов 1С, для файлового — завершение работы через конфигуратор или административные функции типовых конфигураций. Также сеансы можно завершить программно через встроенный язык.
Принудительное отключение обрывает работу пользователей без сохранения открытых, но не записанных данных. Поэтому перед массовым завершением сеансов следует уведомить сотрудников и дать им время завершить текущие операции, если ситуация не аварийная.
Когда нужно отключать пользователей и какие есть способы
Типичные ситуации, требующие массового завершения сеансов: обновление конфигурации базы данных, восстановление из архива, тестирование и исправление данных, перенос базы на другой сервер, регламентные операции с СУБД. Во всех этих случаях активные соединения мешают получить монопольный доступ.
Доступные подходы различаются по «мягкости» и скорости:
- блокировка сеансов с сообщением пользователям — мягкий способ, даёт время на завершение работы;
- принудительное удаление сеансов в консоли кластера — быстрый способ для серверных баз;
- завершение работы через типовую обработку «Блокировка работы пользователей» — для файловых баз;
- программное завершение сеансов через встроенный язык — для автоматизации регламентных операций.
Выбор зависит от того, сколько времени есть и насколько критична потеря несохранённых данных. Аварийное отключение оправдано, когда база повреждена или сервер перегружен; плановые работы лучше проводить с предварительным уведомлением.
Сравнение способов отключения
Подходит для плановых работ: пользователи получают предупреждение и время на сохранение, новые входы запрещены. Требует ожидания.
Мгновенное отключение в клиент-серверном варианте. Несохранённые данные пользователей будут потеряны.
Работает в файловых базах и конфигурациях на БСП. Действует только на сеансы, где применён механизм блокировки.
Для скриптов и регламентных заданий. Требует прав администратора кластера и навыков работы с COM или RAS.
Отключение пользователей через консоль кластера серверов
Консоль кластера — стандартный инструмент администратора клиент-серверной 1С. Она устанавливается вместе с сервером 1С:Предприятия и доступна на компьютере, где развёрнут сервер, или на машине администратора.
Чтобы отключить всех пользователей, выполните следующее:
- Откройте консоль «Серверы 1С:Предприятия» (1CV8 Servers).
- Разверните дерево: «Центральные серверы» → имя сервера → «Кластеры» → «Локальный кластер» → «Информационные базы».
- Выберите нужную базу и перейдите на вкладку «Сеансы».
- Выделите все сеансы (Ctrl+A), нажмите правую кнопку мыши и выберите «Удалить».
- Подтвердите удаление. Сеансы завершатся принудительно.
Учтите, что после удаления сеансов пользователи могут сразу подключиться заново. Чтобы этого не произошло, перед отключением установите блокировку сеансов: в свойствах информационной базы (правая кнопка → «Свойства») отметьте «Блокировка начала сеансов включена», укажите время начала и окончания, при необходимости задайте код разрешения для входа администратора.
- 1Включите блокировку начала сеансов с сообщением пользователям
- 2Подождите 5–10 минут, пока пользователи завершат работу
- 3Откройте список сеансов и убедитесь, что остались только зависшие
- 4Удалите оставшиеся сеансы через контекстное меню
- 5Выполните плановые работы и снимите блокировку
Блокировка сеансов: мягкий вариант отключения
Блокировка начала сеансов не разрывает существующие подключения, но запрещает новые и показывает пользователям сообщение, например: «В базе ведутся регламентные работы, завершите работу до 19:00». Это корректный способ подготовить базу к обслуживанию без потери данных.
В консоли кластера блокировка задаётся в свойствах информационной базы. Поля, которые нужно заполнить: дата и время начала блокировки, дата и время окончания, текст сообщения пользователям, код разрешения (пароль, с которым можно войти вопреки блокировке). Окончание блокировки лучше указывать с запасом — если работы затянутся, пользователи не смогут войти раньше времени.
В типовых конфигурациях на базе Библиотеки стандартных подсистем есть аналогичный механизм: раздел «Администрирование» → «Обслуживание» → «Блокировка работы пользователей». Он дополнительно показывает количество активных пользователей и позволяет завершать их сеансы из интерфейса программы.
Отключение пользователей в файловой базе
В файловом режиме консоли кластера нет, поэтому инструменты другие. Самый удобный вариант — типовая обработка «Блокировка работы пользователей» в конфигурациях на БСП: она устанавливает блокировку и по таймауту завершает сеансы пользователей, работающих в этой же базе.
Если типового механизма нет или пользователи игнорируют предупреждение, остаются административные методы. Можно временно закрыть общий доступ к сетевой папке, где лежит файл 1Cv8.1CD, — открытые сеансы завершатся с ошибкой. Более аккуратный способ на сервере Windows: через «Управление компьютером» → «Общие папки» → «Открытые файлы» найти файл базы и закрыть открытые дескрипторы.
Радикальный вариант — переименовать папку с базой или сам файл 1Cv8.1CD. Пользователи при следующем обращении получат ошибку и завершат работу. После обслуживания имя возвращают обратно. Такой способ подходит, только если доступ к папке есть у администратора и никто не работает с базой локально.
Программное завершение сеансов
Для регламентных операций — например, ночного резервного копирования — отключение автоматизируют. В клиент-серверном варианте это делают через COM-коннектор к агенту сервера или через сервер администрирования RAS в связке с утилитой rac.
Пример команды утилиты rac для завершения всех сеансов базы: сначала получают список сеансов командой rac session --cluster=<ID> --infobase=<ID> list, затем завершают каждый командой rac session --cluster=<ID> terminate с указанием идентификатора сеанса. Обычно это оборачивают в скрипт, который перед отключением включает блокировку сеансов.
rac session --cluster=<ID_кластера> --infobase=<ID_базы> terminate --session=<ID_сеанса>Внутри самой 1С администратор с полными правами может получить список сеансов через объект ПолучитьСеансыИнформационнойБазы() и завершить сеанс методом ЗавершитьСеансИнформационнойБазы() — но этот механизм работает только в клиент-серверном варианте и требует административных прав кластера.
Проверка результата и типичные ошибки
После отключения убедитесь, что сеансов действительно не осталось. В консоли кластера обновите список сеансов — он должен быть пустым либо содержать только ваш сеанс администратора. В файловой базе признак свободной базы — возможность открыть конфигуратор в монопольном режиме без ошибки «база данных занята».
Частые ошибки при массовом отключении:
- удалили сеансы, но не включили блокировку — пользователи тут же подключились заново, и обновление снова заблокировано;
- завершили сеанс фонового задания вместе с пользовательскими, хотя именно оно держало нужный процесс — или наоборот, забыли про фоновые задания, и монопольный режим не установился;
- отключили пользователей без предупреждения в разгар рабочего дня — потеряны несохранённые документы и введённые данные;
- забыли снять блокировку после работ — утром сотрудники не могут войти в базу;
- в файловой базе закрыли доступ к папке во время активной записи — база потребовала тестирования и исправления.
Как проверить результат
Пуст или содержит только сеанс администратора
Остались активные сеансы пользователей или фоновых заданий
Устанавливается без ошибок
Сообщение о занятой базе данных
Снята, пользователи входят штатно
Осталась включённой, вход запрещён
Часто задаваемые вопросы
Можно ли отключить только одного пользователя, а не всех?
Да. В консоли кластера на вкладке «Сеансы» выделите нужный сеанс и удалите только его. В типовых конфигурациях на БСП в списке активных пользователей также можно завершить сеанс конкретного сотрудника.
Что увидит пользователь при принудительном отключении?
Клиентское приложение завершится с сообщением о разрыве соединения с сервером или о завершении сеанса администратором. Все несохранённые данные в открытых формах будут потеряны без возможности восстановления.
Почему после удаления сеансов база всё равно занята?
Чаще всего остались фоновые задания или сеансы веб-сервисов — проверьте вкладки «Сеансы» и «Соединения» полностью. Также пользователи могли подключиться заново, если не была включена блокировка начала сеансов.
Опасно ли принудительное отключение для базы данных?
Для клиент-серверных баз на СУБД удаление сеанса в консоли кластера относительно безопасно: транзакции откатываются средствами СУБД. Для файловых баз принудительный разрыв во время записи может повредить файл, поэтому перед этим желательно иметь резервную копию.
Как отключить пользователей, если нет доступа к консоли кластера?
Используйте типовую обработку «Блокировка работы пользователей» внутри конфигурации (нужны права администратора в базе) либо сервер администрирования RAS с утилитой rac. В крайнем случае можно перезапустить службу агента сервера 1С — это разорвёт все соединения, но затронет все базы кластера.
Как дать пользователям время на завершение работы?
Включите блокировку начала сеансов с будущей датой начала и текстом сообщения — пользователи увидят предупреждение при следующем обращении к базе. В типовых конфигурациях обработка блокировки дополнительно завершает сеансы автоматически по истечении заданного времени.
Что важно запомнить
Перед массовым отключением включите блокировку сеансов и предупредите пользователей. В клиент-серверной базе сеансы удаляют через консоль кластера, в файловой — через типовую обработку или закрытие доступа к файлу. После работ проверьте, что блокировка снята и монопольный режим больше не нужен.