Администрирование · 11 мин
Как сбросить сессию 1С: все рабочие способы
Как сбросить зависшую или активную сессию 1С: через консоль кластера серверов, конфигуратор, список активных пользователей и командную строку. Пошаговые инструкции и риски.
Зависший сеанс 1С — частая причина того, что пользователь не может войти в базу под своим логином, провести регламентные операции или получить монопольный доступ. Сеанс остаётся «висеть» на сервере, хотя клиентское приложение на компьютере пользователя уже закрыто или аварийно завершено. В такой ситуации нужно принудительно сбросить сессию, и способ зависит от режима работы базы: файлового или клиент-серверного.
В файловом режиме сеансы хранятся локально и обычно сбрасываются завершением процесса или очисткой списка активных пользователей. В клиент-серверном варианте управление сеансами выполняется через консоль кластера серверов 1С, где администратор может удалить конкретный сеанс без остановки всей базы. Есть и программные способы — через встроенный язык 1С и командную строку.
Прежде чем сбрасывать чужой сеанс, убедитесь, что пользователь действительно не работает: принудительное завершение обрывает незавершённые транзакции, и несохранённые данные будут потеряны. Ниже разобраны все основные способы с указанием условий применения и рисков.
Когда сброс сессии действительно необходим
Не каждая «зависшая» сессия требует вмешательства. Сервер 1С сам удаляет неактивные сеансы по тайм-ауту, который задаётся в свойствах информационной базы кластера. Но ждать автоматической очистки иногда нельзя: например, когда нужно срочно установить монопольный режим для обновления конфигурации, а «висящие» сеансы этому мешают.
Типичные ситуации, когда сброс оправдан:
- пользователь не может войти в базу — система сообщает, что сеанс с таким именем уже существует или работа под этим пользователем невозможна;
- нужно установить монопольный режим, но в базе числятся активные сеансы;
- сеанс удерживает блокировку данных, из-за которой у других пользователей возникают ошибки при проведении документов;
- клиентское приложение зависло, а процесс на сервере продолжает потреблять ресурсы;
- требуется экстренно завершить работу конкретного сотрудника, например при увольнении.
Проверьте список сеансов в консоли кластера
Посмотрите сеансы и соединения в консоли
Найдите сеанс-блокировщик по времени начала
Завершите процесс через диспетчер задач
Как сбросить сессию через консоль кластера серверов 1С
Это основной способ для клиент-серверного режима работы. Консоль кластера устанавливается вместе с сервером 1С и доступна через меню «Пуск» в папке 1С:Предприятие либо как оснастка «Администрирование серверов 1С Предприятия».
Для работы с консолью нужны права администратора кластера или администратора информационной базы. Если при открытии кластера запрашивается логин и пароль, а вы их не знаете — обратитесь к тому, кто устанавливал сервер, либо проверьте, не задана ли аутентификация на уровне агента.
После удаления сеанса пользователь при следующем обращении к базе получит сообщение о разрыве соединения и сможет войти заново. Если сеанс был «мёртвым» (клиент уже закрыт), никаких видимых последствий не будет — сервер просто освободит ресурсы.
Как завершить сеанс в файловой базе
В файловом режиме кластера серверов нет, поэтому управление сеансами выполняется иначе. Основной инструмент — список активных пользователей, доступный в режиме «Предприятие» или через конфигуратор.
В типовых конфигурациях откройте раздел администрирования и найдите пункт «Активные пользователи» (в некоторых конфигурациях — «Настройки» → «Поддержка и обслуживание» → «Активные пользователи»). В открывшемся списке видно, кто сейчас работает с базой, с какого компьютера и когда начался сеанс. Зависший сеанс обычно можно удалить из этого списка кнопкой «Завершить работу» или аналогичной командой.
Если база не открывается вообще, альтернативный путь — завершить процесс на компьютере, где «завис» клиент:
- Откройте диспетчер задач (Ctrl+Shift+Esc) на компьютере пользователя.
- Найдите процесс 1cv8.exe или 1cv8c.exe.
- Завершите процесс кнопкой «Снять задачу».
- Подождите несколько минут — файловая база освободит блокировку автоматически.
Программные способы: встроенный язык и командная строка
Когда сеансов много или завершение нужно автоматизировать, используют программные средства. Во встроенном языке 1С есть объектная модель работы с кластером через COM-соединение с агентом сервера, но чаще применяют более простой вариант — административную обработку или регламентное удаление через RAS (сервер администрирования кластера).
Для разового завершения всех сеансов базы удобна утилита rac из состава сервера 1С. Она позволяет получить список сеансов и удалить их по идентификатору:
rac session --cluster=<ID_кластера> list --infobase=<ID_базы>
rac session --cluster=<ID_кластера> terminate --session=<ID_сеанса>Сначала командой rac session list получите список сеансов конкретной базы, затем удалите нужный по его UUID. Для массового завершения список обрабатывают в цикле скрипта. Утилита rac требует запущенного агента сервера и прав администратора кластера.
Ещё один вариант — временно включить блокировку сеансов в свойствах информационной базы через консоль кластера (параметр «Блокировка регламентных заданий» и сообщение о блокировке), а затем удалить все сеансы разом. Так делают перед обновлением конфигурации, чтобы пользователи не успели войти снова.
Как сбросить собственную сессию пользователю
Если вы обычный пользователь без прав администратора и система сообщает, что под вашим именем уже есть сеанс, начните с простых действий. Закройте все окна 1С на своём компьютере и проверьте диспетчер задач на предмет оставшихся процессов 1cv8. Часто «зависший» сеанс — это свёрнутое или невидимое окно клиента.
Если на вашем компьютере процессов 1С нет, зависший сеанс, скорее всего, остался на терминальном сервере или на другом компьютере, где вы входили ранее. В этом случае самостоятельно сбросить его не получится — нужен администратор с доступом к консоли кластера или к терминальному серверу.
Полезно знать, что во многих конфигурациях при входе с уже существующим сеансом система предлагает завершить предыдущий сеанс и продолжить вход. Если такой диалог появляется — это самый безопасный способ: старый сеанс завершится штатно.
Как выбрать действие
Проверка результата и типичные ошибки
После сброса сеанса убедитесь, что цель достигнута. В консоли кластера обновите список сеансов — удалённый сеанс не должен появиться снова в течение минуты. Если он возвращается, значит, клиентское приложение активно переподключается: завершите процесс на стороне пользователя.
Как проверить результат
Удалённый сеанс отсутствует после обновления
Сеанс появляется снова — клиент переподключается
Вход выполняется без сообщения о занятом сеансе
Ошибка повторяется — осталось соединение или блокировка
Устанавливается без ошибок
Сообщение об активных соединениях — проверьте раздел «Соединения»
Документы проводятся без ошибок блокировки
Ошибки сохраняются — ищите другой сеанс-блокировщик
Отдельно стоит сказать про раздел «Соединения» в консоли кластера. Соединение — это технический канал между клиентом и рабочим процессом сервера, а сеанс — логическая сессия пользователя. Для полного освобождения базы иногда нужно удалить и то, и другое, но начинать следует с сеансов.
Что важно запомнить
В клиент-серверном режиме сеансы сбрасывают через консоль кластера, в файловом — через список активных пользователей или завершение процесса. Перед удалением чужого сеанса предупредите пользователя, а после — проверьте, что сеанс не переподключился и цель (вход, монопольный режим, снятие блокировки) достигнута.
Часто задаваемые вопросы
Пользователь не может войти: «сеанс уже существует». Что делать?
Проверьте список сеансов в консоли кластера и удалите старый сеанс этого пользователя. Если база файловая — завершите процессы 1cv8 на компьютере пользователя и подождите несколько минут. Во многих конфигурациях при повторном входе система сама предлагает завершить предыдущий сеанс — воспользуйтесь этим вариантом.
Чем сеанс отличается от соединения в консоли кластера?
Соединение — это физический канал связи между клиентом и рабочим процессом сервера. Сеанс — логическая сессия пользователя с контекстом (правами, настройками, состоянием). Один сеанс может использовать несколько соединений. Для завершения работы пользователя удаляйте сеанс; соединения удаляют, когда нужно освободить рабочий процесс.
Потеряются ли данные при принудительном сбросе сеанса?
Данные, уже записанные в базу завершёнными транзакциями, сохранятся. Потеряется только то, что пользователь не сохранил: открытые незаписанные документы, незавершённые транзакции будут откачены. Поэтому перед удалением активного сеанса предупредите пользователя.
Как сбросить все сеансы сразу перед обновлением конфигурации?
В консоли кластера откройте свойства информационной базы, включите блокировку начала сеансов с сообщением для пользователей, затем в разделе «Сеансы» выделите и удалите все сеансы. Блокировка не даст пользователям войти заново. Альтернатива — скрипт на утилите rac, удаляющий сеансы в цикле.
Зависший сеанс удаляется, но появляется снова. Почему?
Клиентское приложение на компьютере пользователя продолжает работать и автоматически переподключается. Завершите процесс 1cv8.exe на том компьютере или перезагрузите его. Также проверьте, не запущено ли регламентное или фоновое задание от имени этого пользователя.
Можно ли настроить автоматическое завершение неактивных сеансов?
Да. В свойствах информационной базы в консоли кластера есть параметры тайм-аута: «Интервал перезапуска» для рабочих процессов и настройки завершения неактивных сеансов. Кроме того, в типовых конфигурациях на базе БСП доступна настройка времени завершения неактивных сеансов в разделе администрирования.