Администрирование · 11 мин
Как завершить сеансы пользователей в 1С 8.3
Как завершить сеансы пользователей в 1С 8.3: через консоль кластера, конфигуратор, командную строку и код. Риски, проверка результата, типичные ошибки.
Завершение сеансов пользователей — стандартная задача администратора 1С. Она возникает при обновлении конфигурации, монопольном доступе к базе, «зависших» сеансах, которые держат блокировки, и при необходимости срочно отключить конкретного сотрудника. Способ завершения зависит от режима работы базы: файловый или клиент-серверный.
В клиент-серверном варианте основной инструмент — консоль кластера серверов 1С, где сеансы видны и отключаются централизованно. В файловом варианте такого механизма нет, поэтому применяются обходные пути: установка блокировки сеансов, перезапуск службы публикации или программные методы. Ниже разобраны все рабочие варианты с ограничениями каждого.
Важно понимать: принудительное завершение сеанса обрывает работу пользователя без сохранения несохранённых данных. Поэтому перед массовым отключением корректная практика — предупредить сотрудников и убедиться, что никто не проводит длинные операции вроде закрытия месяца или группового перепроведения.
Чем сеанс отличается от соединения и почему это важно
Сеанс — это логическая сессия пользователя или фонового процесса с информационной базой. Соединение — технический канал между клиентом и кластером серверов. Один сеанс может существовать с несколькими соединениями или временно без активного соединения (например, при «спящем» тонком клиенте).
Завершение сеанса — более радикальное действие: пользователь полностью выходит из базы, и при следующем обращении ему потребуется новая авторизация. Разрыв соединения без удаления сеанса часто не решает проблему: сеанс продолжает числиться активным и держать блокировки.
Именно поэтому при борьбе с «зависшими» сеансами удалять нужно именно сеанс в консоли кластера, а не искать отдельные соединения. Обратная ситуация тоже встречается: физически компьютер пользователя выключен, а сеанс на сервере живёт ещё десятки минут, пока не сработает таймаут кластера.
Завершение сеансов через консоль кластера серверов
Это основной способ для клиент-серверного режима. Откройте оснастку «Администрирование серверов 1С Предприятия» на компьютере, где установлен сервер 1С, или подключитесь к серверу удалённо. В дереве слева разверните нужный кластер, затем ветку «Сеансы» — справа появится список всех активных сеансов с указанием пользователя, компьютера, приложения и времени начала.
Чтобы завершить конкретный сеанс, выделите его в списке и нажмите «Удалить» (или выберите соответствующий пункт контекстного меню). Для массового завершения выделите несколько сеансов с зажатой клавишей Ctrl или Shift. Учётная запись, из-под которой открыта консоль, должна обладать правами администратора кластера или администратора информационной базы.
После удаления сеанса пользователь на своём компьютере получит сообщение о разрыве соединения с сервером, и клиентское приложение закроется. Все несохранённые данные (открытые незаписанные документы, непроведённые изменения) будут потеряны.
- 1Откройте оснастку «Администрирование серверов 1С Предприятия».
- 2Разверните нужный сервер и кластер, перейдите в ветку «Сеансы».
- 3Найдите сеанс по имени пользователя или компьютера в списке.
- 4Выделите сеанс и нажмите «Удалить» (Delete) или пункт контекстного меню.
- 5Повторите для остальных сеансов или выделите группу через Ctrl/Shift.
- 6Проверьте, что список сеансов пуст или остались только нужные сеансы.
Блокировка сеансов перед регламентными работами
Если цель — не разово «выкинуть» пользователей, а подготовить базу к обновлению или обслуживанию, правильнее использовать механизм блокировки сеансов. Он не даёт создавать новые сеансы и позволяет задать сообщение, которое увидят пользователи при попытке входа.
В типовых конфигурациях путь обычно такой: «Администрирование» → «Обслуживание» → раздел управления блокировкой работы пользователей (в конфигурациях на БСП — «Блокировка работы пользователей»). Установите флаг блокировки, укажите время начала и окончания, текст сообщения и код разблокировки. Код разблокировки позволяет администратору войти в базу, пока блокировка действует: его добавляют в строку запуска через параметр /UC.
Блокировка не завершает уже активные сеансы автоматически — она лишь просит пользователей выйти и блокирует новые входы. Активные сеансы придётся завершить отдельно через консоль кластера или дождаться, пока пользователи выйдут сами.
Завершение сеансов через конфигуратор и командную строку
Монопольный режим конфигуратора
При входе в конфигуратор с установленным монопольным режимом платформа требует отсутствия других сеансов. Если сеансы есть, конфигуратор покажет их список и предложит завершить. Это работает и в файловом, и в клиент-серверном варианте, но в клиент-серверном надёжнее всё же использовать консоль кластера — конфигуратор не всегда корректно завершает «спящие» сеансы.
Пакетный запуск с завершением сеансов
Для автоматизации регламентных работ удобно запускать конфигуратор из командной строки с параметрами, которые принудительно завершают сеансы и снимают блокировки. Типовая комбинация для обновления конфигурации базы данных выглядит так:
"C:\Program Files\1cv8\8.3.x.xxxx\bin\1cv8.exe" DESIGNER /S"Server\Base" /N"Админ" /P"пароль" /DisableStartupDialogs /UpdateDBCfgКлюч /DisableStartupDialogs подавляет диалоги при запуске. Само по себе обновление конфигурации БД потребует монопольного доступа, поэтому перед запуском сеансы всё равно нужно завершить — либо через консоль, либо через агент сервера, либо программно. Полностью «выгнать всех одной командой» штатная командная строка конфигуратора не умеет.
Программное завершение сеансов через код
Для регулярной автоматизации (ночные обновления, регламентное обслуживание) сеансы завершают программно — через COM-соединение с агентом сервера (V83.COMConnector и объекты администрирования) или через административный интерфейс RAS (rac.exe / ras). Утилита rac позволяет получить список сеансов кластера и завершить их по идентификатору:
rac session --cluster=<ID_кластера> list
rac session --cluster=<ID_кластера> terminate --session=<ID_сеанса>Перед использованием rac нужно запустить службу RAS (RAS.exe) и убедиться, что она связана с нужным кластером. Этот способ удобен для скриптов: сначала скрипт получает список сеансов, отфильтровывает служебные, затем по очереди завершает пользовательские.
Внутри самой информационной базы в конфигурациях на Библиотеке стандартных подсистем доступны методы работы с соединениями ИБ (получение списка сеансов через ПолучитьСеансыИнформационнойБазы). Учтите ограничение: встроенный язык может получить список сеансов, но завершить чужой сеанс штатными методами языка нельзя — для этого нужен внешний механизм (консоль, rac или COM).
Особенности файлового режима
В файловой базе нет кластера серверов, поэтому централизованной консоли сеансов не существует. Увидеть, кто работает в базе, можно через «Администрирование» → «Активные пользователи» в самой базе, но завершить чужой сеанс оттуда нельзя.
Практические варианты для файловой базы: попросить пользователей выйти (через сообщение блокировки сеансов), перезапустить веб-сервер, если база опубликована через IIS/Apache (это разорвёт клиентские соединения), либо завершить процессы 1cv8.exe на компьютерах пользователей удалённо через диспетчер задач или PsExec. Последний способ грубый: несохранённые данные гарантированно теряются, а при обрыве записи файловой базы есть риск повреждения данных.
Проверка результата и выбор способа
После завершения сеансов убедитесь, что цель достигнута. В консоли кластера обновите список «Сеансы» — он должен быть пустым или содержать только ваш сеанс и нужные фоновые. Попробуйте установить монопольный режим: если установка прошла без ошибки «обнаружены активные сеансы», значит, база свободна.
Учтите, что пользователи с автоматическим переподключением или запущенными ярлыками могут сразу создать новые сеансы. Поэтому для регламентных работ сначала включайте блокировку сеансов, потом завершайте активные — в обратном порядке база «наполнится» снова.
Как выбрать способ завершения
Как проверить результат
Пусто или только нужные сеансы
Удалённые сеансы появились снова — пользователи переподключились, включите блокировку
Режим устанавливается без ошибок
Ошибка об активных сеансах — кто-то ещё в базе
Нет выполняющихся регламентных операций
Задание выполняется — дождитесь завершения, не удаляйте его сеанс
Частые вопросы
Пользователь выключил компьютер, а сеанс в консоли висит. Это нормально?
Да. При внезапном отключении клиента сервер некоторое время считает сеанс активным, пока не сработают таймауты кластера. Такой сеанс можно удалить вручную через консоль — это безопасно, так как клиент уже не работает.
Можно ли завершить сеанс конкретного пользователя, не трогая остальных?
Да. В консоли кластера отсортируйте список сеансов по колонке «Пользователь», найдите нужный сеанс и удалите только его. Остальные сеансы продолжат работу без перерыва.
Что увидит пользователь при принудительном завершении сеанса?
Клиентское приложение покажет сообщение о разрыве соединения с сервером и закроется. Незаписанные данные (открытые документы, введённые строки) не сохранятся, восстановить их нельзя.
Как войти в базу, если включена блокировка сеансов?
Используйте код разблокировки, заданный при установке блокировки: добавьте параметр /UC«код» в строку запуска толстого или тонкого клиента. Без кода войти сможет только тот, кто снимет блокировку через конфигуратор или консоль.
Почему после завершения сеансов монопольный режим всё равно не ставится?
Чаще всего пользователи успели переподключиться или остались фоновые сеансы. Проверьте список сеансов повторно, включите блокировку новых сеансов и убедитесь, что нет выполняющихся фоновых заданий.
Опасно ли завершать сеансы фоновых заданий?
Да, если задание выполняет важную операцию: обмен данными, расчёт итогов, обновление. Прерывание может оставить данные в промежуточном состоянии. Завершайте такие сеансы только убедившись, что задание зависло, а не работает.
Что важно запомнить
В клиент-серверной 1С сеансы завершаются через консоль кластера, для автоматизации — через утилиту rac. В файловой базе централизованного механизма нет: используют блокировку сеансов и перезапуск публикации. Сначала включайте блокировку новых сеансов, затем завершайте активные, и всегда предупреждайте пользователей — несохранённые данные при отключении теряются.