Администрирование · 11 мин
Как завершить активные сеансы 1С
Как завершить активные сеансы 1С в файловом и клиент-серверном режиме: через консоль кластера, администрирование, параметры запуска и программно. Пошаговая инструкция.
Активные сеансы 1С часто мешают выполнить обновление конфигурации, восстановление из архива или монопольный доступ к базе. Пользователь ушёл домой, оставив открытый сеанс, — и регламентные операции блокируются. Задача администратора — корректно завершить такие сеансы, не потеряв данные и не нарушив работу тех, кто действительно работает.
Способ завершения зависит от режима работы информационной базы: файловый или клиент-серверный. В клиент-серверном варианте сеансами управляет сервер 1С:Предприятия, и у администратора есть штатные инструменты — консоль кластера и утилита администрирования. В файловом режиме централизованного управления нет, поэтому применяются другие методы: завершение процессов на компьютерах пользователей, блокировка соединений или программный механизм из состава БСП.
Прежде чем принудительно «сбрасывать» пользователей, важно понять, какие сеансы активны, кому они принадлежат и есть ли риск потери несохранённых данных. Ниже разобраны все основные сценарии с конкретными действиями и ограничениями.
Как посмотреть список активных сеансов
Перед завершением нужно увидеть, кто и как подключён к базе. В клиент-серверном режиме откройте консоль кластера серверов 1С (оснастка «Администрирование серверов 1С Предприятия»), разверните нужный кластер, найдите информационную базу и перейдите на вкладку «Сеансы». Здесь видны имя пользователя, компьютер, время начала сеанса, приложение (тонкий клиент, толстый клиент, фоновое задание, COM-соединение) и активность.
Обратите внимание на разницу между «Сеансами» и «Соединениями». Сеанс — это логическая работа пользователя или механизма, а соединение — физическая связь с рабочим процессом сервера. Один сеанс может удерживаться соединением, и «висящий» сеанс часто означает, что клиентское приложение аварийно закрылось, а соединение ещё живёт на сервере.
В файловом режиме централизованного списка нет. Ориентироваться можно по файлу блокировок в каталоге базы и по списку пользователей, который показывает сама 1С при попытке монопольного доступа, — платформа сообщит, какие сеансы мешают установить режим.
Завершение сеансов через консоль кластера серверов
Это основной штатный способ для клиент-серверного режима. Откройте оснастку «Администрирование серверов 1С Предприятия» на компьютере, где установлен сервер 1С, или подключитесь к серверу удалённо, добавив его в список центральных серверов.
- 1Откройте оснастку «Администрирование серверов 1С Предприятия» от имени администратора
- 2Разверните нужный центральный сервер и кластер, найдите информационную базу
- 3Перейдите на вкладку «Сеансы» и отсортируйте список по пользователю или времени начала
- 4Выделите лишние сеансы (с Ctrl — несколько) и нажмите Delete или выберите «Удалить» в контекстном меню
- 5Проверьте, что сеансы исчезли из списка, а блокирующая операция стала доступна
Удаление сеанса происходит принудительно: клиентское приложение пользователя получит ошибку «Сеанс отсутствует или удалён» и закроется. Несохранённые данные в открытых формах будут потеряны, поэтому при возможности предупредите пользователей заранее — хотя бы через корпоративный мессенджер или рассылку.
Если в консоли требуется аутентификация администратора кластера или информационной базы, введите учётные данные. Если администраторы кластера не заданы, подключение выполняется без пароля — это типичная ситуация для небольших установок, но с точки зрения безопасности список администраторов стоит настроить.
Управление через утилиту администрирования кластера (rac)
Когда графическая консоль недоступна или нужно автоматизировать завершение сеансов, используется консольная утилита rac из каталога установки сервера 1С. Она позволяет получить список сеансов и завершить их по фильтру.
rac session --cluster=<ID_кластера> list --infobase=<ID_базы>
rac session --cluster=<ID_кластера> terminate --session=<ID_сеанса>Сначала запросите список кластеров командой rac cluster list, затем список баз и сеансов. Идентификаторы подставляются в команды завершения. Такой подход удобно обернуть в скрипт и запускать по расписанию перед регламентным обновлением: например, завершать все сеансы конкретной базы за несколько минут до начала работ.
Для массового завершения потребуется перебрать идентификаторы сеансов в цикле — команда terminate работает с одним сеансом за вызов. Скрипты на PowerShell или bash с этой задачей справляются, но перед боевым применением проверьте их на тестовой базе.
Как завершить сеансы в файловом режиме
Файловая база не имеет сервера приложений, поэтому централизованно «отключить» пользователей нельзя. Каждый сеанс — это процесс 1cv8.exe на компьютере пользователя, который держит открытым файл базы по сети или локально.
Практические варианты действий:
- Попросить пользователей закрыть программу — самый безопасный способ, требует только дисциплины.
- Завершить процесс 1cv8.exe на удалённом компьютере через диспетчер задач с подключением по сети, PowerShell (командлеты Stop-Process с Invoke-Command) или планировщик заданий — потребуются права администратора на тех машинах.
- Перезапустить сервер или службу, раздающую общий доступ к папке с базой, — грубый метод, который разорвёт все подключения сразу.
Если база расположена на файловом сервере, можно временно закрыть сетевой доступ к папке — сеансы оборвутся. Но этот способ равносилен аварийному отключению и применяется только как крайняя мера.
Программное завершение сеансов и блокировка входа
Если конфигурация построена на Библиотеке стандартных подсистем (БСП), в ней обычно есть готовый механизм «Блокировка работы пользователей» (раздел «Администрирование» → «Обслуживание»). Он позволяет установить блокировку входа на заданный период и принудительно завершить активные сеансы: пользователи получат предупреждение и через заданное время их работа будет завершена штатно, с попыткой сохранить данные.
В клиент-серверном режиме блокировку соединений можно задать и в свойствах информационной базы в консоли кластера: параметры «Блокировка начала сеансов включена», время начала и окончания, а также код разрешения для входа администратора. Новые сеансы без кода разрешения создаваться не будут, а существующие завершайте вручную по списку.
Программно из кода конфигурации доступны методы работы с сеансами через объект ПолучитьСоединенияИнформационнойБазы() и административные интерфейсы, но для разрыва соединений из кода чаще используют COM-коннектор к агенту сервера (V83.COMConnector) с вызовом методов агентства. Это вариант для опытных администраторов и разработчиков.
Что делать с «зависшими» сеансами
Зависший сеанс — это запись в консоли кластера, которой не соответствует реально работающий пользователь: клиент закрылся аварийно, компьютер выключили, а сеанс остался. Такие сеансы расходуют лицензии и мешают монопольному доступу.
Обычно сервер 1С сам удаляет мёртвые сеансы по тайм-ауту, но ждать не обязательно: зависший сеанс удаляется из консоли так же, как обычный, — выделением и удалением. Если сеанс не удаляется или появляется снова, проверьте фоновые задания и регламентные операции: некоторые из них пересоздают сеанс автоматически. В этом случае сначала отключите регламентные задания в свойствах базы.
Проверка результата после завершения сеансов
После завершения убедитесь, что цель достигнута. В консоли кластера обновите список сеансов — он должен быть пуст или содержать только ваш административный сеанс. Затем запустите операцию, ради которой всё делалось: установку монопольного режима, обновление конфигурации или восстановление.
Как проверить результат
Остался только сеанс администратора
Сеансы пользователей появляются снова
Включена, задан код разрешения
Блокировка не установлена — возможны новые входы
Операция запускается без ошибок о занятых сеансах
Платформа сообщает об активных соединениях
Отключены или завершены
Задания выполняются и создают сеансы
После завершения регламентных работ не забудьте снять блокировку входа и вернуть расписание регламентных заданий — иначе утром пользователи не смогут войти в базу, а обмены и расчёты не выполнятся.
Что важно запомнить
В клиент-серверном режиме сеансы завершаются через консоль кластера или утилиту rac, в файловом — завершением процессов 1cv8.exe на компьютерах пользователей. Всегда сначала включайте блокировку входа, предупреждайте пользователей и проверяйте фоновые задания. После работ снимайте блокировку и проверяйте целостность базы.
Частые вопросы
Можно ли завершить сеанс конкретного пользователя, не трогая остальных?
Да. В консоли кластера на вкладке «Сеансы» отсортируйте список по имени пользователя, выделите только его сеансы и удалите их. Остальные пользователи продолжат работу без перерыва.
Пользователь завершил сеанс, а лицензия не освободилась. Почему?
Лицензия может удерживаться другим сеансом того же пользователя (например, вторым открытым клиентом) или зависшим соединением. Проверьте полный список сеансов по этому пользователю и удалите остатки. Также серверные лицензии освобождаются с небольшой задержкой.
Как завершить все сеансы перед обновлением конфигурации автоматически?
Настройте скрипт на утилите rac, который получает список сеансов базы и завершает каждый в цикле, и запускайте его планировщиком заданий перед обновлением. Дополнительно включите блокировку начала сеансов, чтобы никто не подключился в процессе.
Чем отличается завершение сеанса от завершения соединения?
Сеанс — логическая сущность работы пользователя, соединение — физическая связь с рабочим процессом. Удаление сеанса разрывает и связанное соединение. Удалять соединения напрямую имеет смысл, когда сеанс уже неактивен, но соединение зависло.
Опасно ли удалять сеанс, в котором выполняется фоновое задание?
Завершение сеанса прервёт фоновое задание. Если задание писало данные (например, обмен или проведение документов), возможны незавершённые транзакции. Перед удалением посмотрите в консоли, какое задание выполняется, и при необходимости дождитесь его окончания или отмените штатно.
Нет доступа к консоли кластера. Как ещё можно сбросить сеансы?
Можно перезапустить службу агента сервера 1С — все сеансы будут разорваны, но это грубый метод с полной остановкой работы. Альтернатива — утилита rac с любого компьютера, где установлены компоненты сервера, либо механизм блокировки работы пользователей из БСП внутри самой конфигурации.