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

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

Как снять сеанс в 1С: все способы завершения сеансов

Как снять сеанс в 1С: через консоль кластера, конфигуратор, интерактивно и программно. Разбор способов завершения зависших сеансов, риски и проверка результата.

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

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

Важно понимать: принудительное снятие сеанса — это аварийное завершение работы пользователя. Несохранённые данные будут потеряны, а прерванная транзакция в редких случаях может оставить блокировки на уровне СУБД. Поэтому перед снятием чужого сеанса стоит убедиться, что пользователь действительно не работает, а не просто отошёл от компьютера.

Как понять, что сеанс нужно снимать

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

Признаки зависшего сеанса видны в консоли кластера: у сеанса не меняется время последнего вызова, объём прочитанных и записанных данных стоит на месте, а сам пользователь при этом не за компьютером или его клиент уже закрыт. Если клиент аварийно завершился, сервер 1С может держать «мёртвый» сеанс ещё несколько минут — часто он снимается сам по таймауту, но ждать не всегда удобно.

Сеанс активен, данные меняютсяПользователь реально работает

Связаться с пользователем и попросить завершить работу штатно

Время последнего вызова давно не меняетсяВероятно зависший или забытый сеанс

Проверить, не отошёл ли пользователь; при подтверждении зависания — снять сеанс

Клиент закрыт, а сеанс виситМёртвый сеанс после аварийного завершения

Подождать несколько минут — сервер может снять его сам, иначе удалить вручную

Нужен монопольный режимМешают любые чужие сеансы

Предупредить пользователей, затем снять все сеансы кроме своего

Снятие сеанса через консоль кластера серверов 1С

Это основной и самый корректный способ для клиент-серверного режима. Консоль администрирования серверов 1С устанавливается вместе с сервером и доступна через меню «Пуск» → «1С Предприятие» → «Администрирование серверов 1С Предприятия». Открыть её можно и с другого компьютера, если сервер доступен по сети.

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

Для выполнения операции потребуются права администратора кластера или информационной базы, если они заданы. Если аутентификация администраторов кластера не настроена, консоль позволит снять сеанс без ввода логина и пароля — это стоит учитывать с точки зрения безопасности и ограничивать доступ к серверу.

Порядок действий в консоли кластера
  1. 1
    Откройте «Администрирование серверов 1С Предприятия»
  2. 2
    Раскройте сервер → кластер → «Сеансы»
  3. 3
    Найдите нужный сеанс по имени пользователя или компьютера
  4. 4
    Проверьте время последней активности сеанса
  5. 5
    Кликните правой кнопкой → «Удалить»
  6. 6
    Убедитесь, что сеанс исчез из списка

Снятие сеанса через конфигуратор и из клиентского приложения

В файловом режиме консоли кластера нет, поэтому используются встроенные средства платформы. В конфигураторе откройте меню «Администрирование» → «Активные пользователи». Откроется список текущих подключений к базе. Выделите пользователя и нажмите кнопку «Завершить» — платформа отправит команду на завершение сеанса.

Тот же список активных пользователей доступен и из режима 1С:Предприятие, если у вашей учётной записи есть административные права: путь зависит от конфигурации, обычно это «Администрирование» → «Обслуживание» → «Активные пользователи» или аналогичный пункт в разделе настроек. Завершение отсюда работает мягче, чем удаление в консоли, но всё равно обрывает работу пользователя.

Ограничение способа: он показывает только сеансы конкретной базы и требует, чтобы вы сами могли войти в неё. Если база заблокирована или вы не можете зайти из-за нехватки лицензий, придётся действовать через консоль кластера или на уровне операционной системы.

Принудительное завершение на уровне операционной системы

Когда клиент 1С завис намертво, самый быстрый способ — завершить процесс на компьютере пользователя. Откройте диспетчер задач (Ctrl+Shift+Esc), найдите процесс 1cv8.exe или 1cv8c.exe (тонкий клиент), выделите его и нажмите «Снять задачу». Для терминальных сессий проверьте, что завершаете процесс нужного пользователя — на сервере терминалов процессов 1cv8.exe много.

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

В клиент-серверном режиме не стоит завершать процессы агента сервера 1С (ragent, rphost) ради снятия одного сеанса: остановка rphost оборвёт все сеансы, которые он обслуживает, а перезапуск службы агента положит работу всех пользователей всех баз кластера. Это крайняя мера для ситуаций, когда завис сам сервер.

Программное снятие сеансов и блокировка базы

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

Разработчику доступны объекты встроенного языка: ПолучитьСеансыИнформационнойБазы() возвращает массив сеансов, а ЗавершитьСеансИнформационнойБазы() завершает выбранный. Для работы этих методов из внешнего соединения нужны административные права и COM-коннектор. Этот подход удобен для скриптов автоматического обновления ночью.

bsl
Сеансы = ПолучитьСеансыИнформационнойБазы();
Для Каждого Сеанс Из Сеансы Цикл
    Если Сеанс.ИмяПользователя = "ИвановИИ" Тогда
        ЗавершитьСеансИнформационнойБазы(Сеанс.НомерСеанса);
    КонецЕсли;
КонецЦикла;

Проверка результата и типичные ошибки

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

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

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

Частые вопросы о снятии сеансов в 1С

Потеряет ли пользователь данные при снятии сеанса?

Да, все несохранённые данные будут потеряны: открытые незаписанные документы, введённые строки, настройки отчётов. Уже записанные в базу объекты не пострадают — снятие сеанса не откатывает завершённые транзакции.

Почему сеанс появляется снова после удаления?

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

Как снять все сеансы сразу для обновления конфигурации?

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

Можно ли снять сеанс, если нет доступа к серверу?

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

Сколько времени сервер держит «мёртвый» сеанс после аварийного закрытия клиента?

Обычно несколько минут — точное время зависит от настроек таймаутов кластера. Если ждать некогда, удалите сеанс вручную в консоли: это сразу освободит лицензию и снимет блокировки.

Итог

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

Основной инструмент снятия сеансов — консоль кластера для клиент-серверного режима и «Активные пользователи» для файлового. Зависший клиент завершайте через диспетчер задач на компьютере пользователя. Никогда не перезапускайте службу сервера ради одного сеанса и всегда предупреждайте пользователей перед принудительным завершением — несохранённые данные при снятии сеанса теряются безвозвратно.