Отключаем пользователей от базы 1С: консоль, rac и ручные способы
Содержание
Вы запускаете обновление, а 1С отвечает: Невозможно выполнить операцию, пока в информационной базе работают другие пользователи. Кто-то ушёл на обед с открытой базой, у кого-то сеанс завис. Чтобы завершить сеанс в 1С, откройте консоль кластера серверов, найдите базу, выберите пункт Сеансы и нажмите «Завершить сеанс» у нужного пользователя. Для файловой базы путь другой, он описан ниже.
Способ зависит от режима работы. Клиент-серверная база управляется через кластер. Файловая такой возможности не имеет: там остаются список активных пользователей внутри 1С и диспетчер задач. Ниже все варианты от мягкого к жёсткому.
Закрыть активные сеансы в 1С можно и по одному, и пачкой, и заранее запретить новые входы. Последнее нужно почти всегда, иначе пользователи вернутся через минуту.
Сначала определите режим базы: файловая или клиент-серверная
От этого зависит набор инструментов. Режим виден в окне запуска 1С: в строке информационной базы указан либо путь к папке или File=, либо имя сервера (Srvr=).
| Режим | Где найти сеансы | Чем завершать |
|---|---|---|
| Клиент-серверный | Консоль кластера, утилита rac | Кнопка «Завершить сеанс», команда rac session terminate |
| Файловый | Список активных пользователей в самой 1С, открытые файлы в Windows | Просьба выйти, блокировка, завершение процесса |
В файловом режиме принудительно «выкинуть» пользователя средствами 1С нельзя. Можно только запретить новые входы и попросить остальных выйти.
Как закрыть сеансы пользователей из самой 1С
Если консоль кластера недоступна, а у вас есть права администратора, начните с самой базы. Это самый безопасный вариант.
- Войдите в 1С под пользователем с полными правами.
- В режиме «1С:Предприятие» откройте список активных пользователей. В типовых конфигурациях он находится в разделе администрирования (раздел «Поддержка и обслуживание»), если не нашли, воспользуйтесь поиском по меню по слову «активные».
- Посмотрите, кто работает, с какого компьютера и в каком приложении.
- Используйте блокировку работы пользователей. В ней задаются время начала, сообщение для остальных и код разрешения.
- Пользователи получат предупреждение и завершат работу сами. Сеансы, которые не закрылись по таймеру, закрываются принудительно.
В Конфигураторе то же самое делается через меню Администрирование → Активные пользователи. Там видно имя, компьютер, приложение и время начала сеанса.
💡 Пока активных сеансов нет, Конфигуратор откроет базу в монопольном режиме. Если монопольный режим не включается, значит, кто-то ещё сидит в базе, в том числе фоновым заданием или внешним соединением.
Параметр запуска для скриптов
Для автоматизации в командной строке 1С есть параметр /C со значением ЗавершитьРаботуПользователей. Он работает в конфигурациях с подсистемой «Базовая функциональность»:
"C:\Program Files\1cv8\8.3.xx.xxxx\bin\1cv8.exe" ENTERPRISE /S"srv-1c\accounting" /N"Админ" /P"пароль" /C"ЗавершитьРаботуПользователей" /UC"ключ"
Вместо 8.3.xx.xxxx подставьте версию платформы, установленную у вас. Ключ после /UC потом понадобится для входа в заблокированную базу.
Завершение сеансов через консоль кластера серверов
Для серверной базы это основной способ. Консоль ставится вместе с сервером 1С или отдельным компонентом платформы. Подключаться нужно к серверу, где запущена служба «Агент сервера 1С:Предприятия» (порт по умолчанию 1540).
Находим нужный сеанс
- Откройте консоль администрирования серверов 1С.
- Добавьте центральный сервер, если его нет:
Центральные серверы 1С:Предприятия → Создать → Центральный сервер. - Раскройте ветку
Кластеры → Локальный кластер → Информационные базы. - Выберите свою базу и откройте узел
Сеансы. - В таблице видны пользователь, компьютер, приложение, время начала и последняя активность.
Колонка «Приложение» помогает отличить живого человека от фонового задания или внешнего соединения. Клиент вида «Тонкий клиент» обычно человек. «Фоновое задание» и «Сервер COM-соединения» трогать осторожнее.
Какие сеансы можно закрывать, а какие нет
Перед тем как нажимать «Завершить», посмотрите на колонку «Приложение». От неё зависит, чем рискуете.
| Тип в списке | Что это | Можно ли закрывать |
|---|---|---|
| Тонкий клиент, веб-клиент | Живой пользователь | Да, после предупреждения |
| Толстый клиент | Пользователь или администратор в режиме 1С:Предприятие | Да, после предупреждения |
| Конфигуратор | Разработчик или администратор правит конфигурацию | Только после звонка: незаписанные изменения пропадут |
| Фоновое задание | Регламентная операция: обмен, пересчёт итогов | Лучше дождаться окончания |
| Внешнее соединение | Сайт, обмен, сторонняя программа | Сначала остановите источник |
Завершаем сеанс
- Правой кнопкой по строке сеанса выберите «Завершить сеанс» (или кнопка с красным крестиком на панели).
- Подтвердите действие.
- Обновите список. Строка должна исчезнуть.
Выделить несколько строк
можно с зажатым Ctrl, а затем завершить их одним действием.
Все несохранённые данные в закрытых сеансах пропадут. Документ, который человек набирал полчаса, не сохранится. Поэтому предупредите людей заранее.
Если сеанс остался в списке
Бывает, что сеанс завершён, а строка висит. Причина обычно в соединении, которое не отпустил клиентский процесс.
- Откройте узел
Соединенияв той же информационной базе. - Найдите соединение того же пользователя и компьютера.
- Выберите «Разорвать соединение».
Если и это не помогло, остаётся перезапуск рабочего процесса. Он затронет всех пользователей этого рабочего процесса, поэтому делайте его в нерабочее время.
Как запретить новые входы перед завершением
Просто закрыть сеансы мало. Пока вход открыт, люди заходят обратно. Блокировку включают в свойствах информационной базы в консоли.
- Откройте свойства базы (двойной щелчок по ней в консоли).
- Включите флажок «Включить блокировку начала сеансов».
- Задайте период: «Начало» и «Конец».
- Впишите сообщение и код разрешения.
- Сохраните настройки и завершите оставшиеся сеансы.
Код разрешения нужен вам самим. Чтобы войти в заблокированную базу администратором, добавьте в параметры запуска /UC и тот же код.
| Что блокируется | Где настраивается | Когда использовать |
|---|---|---|
| Начало новых сеансов | Свойства базы, блокировка начала сеансов | Перед обновлением, переносом, реструктуризацией |
| Регламентные задания | Свойства базы, блокировка регламентных заданий | Перед копированием базы на тестовый стенд |
Тестовую копию рабочей базы нужно открывать с отключёнными регламентными заданиями. Иначе она начнёт рассылать письма и обмениваться данными как боевая.
Закрытие сеансов командной строкой: утилита rac
Когда консоли под рукой нет, а сервер управляется по SSH или через планировщик, подойдёт rac. Она лежит в каталоге платформы рядом с остальными исполняемыми файлами и работает через службу администрирования ras.
Запустите службу администрирования (порт 1545 по умолчанию, 1540 это порт агента сервера):
ras cluster --port=1545 localhost:1540
Дальше три шага:
rac localhost:1545 cluster list
rac localhost:1545 session list --cluster=<идентификатор_кластера>
rac localhost:1545 session terminate --cluster=<идентификатор_кластера> --session=<идентификатор_сеанса>
Идентификаторы это длинные GUID, их выводит предыдущая команда. Чтобы не искать нужный сеанс глазами, отфильтруйте вывод по имени пользователя (findstr в Windows, grep в Linux).
💡 Для регулярных задач оберните три команды в .bat или .sh и повесьте на расписание. Типичный сценарий: ночью закрыть все сеансы, сделать выгрузку базы, открыть доступ.
Если база файловая: что делать, когда пользователь завис
В файловом режиме консоли кластера нет. Рабочий порядок такой.
- Позвоните или напишите пользователю. Чаще всего проблема решается просьбой закрыть окно 1С.
- Откройте Конфигуратор и проверьте
Администрирование → Активные пользователи. Так вы узнаете, чей сеанс остался. - Если человек недоступен, зайдите на его компьютер. Откройте диспетчер задач, найдите процесс
1cv8.exe(или1cv8c.exeдля тонкого клиента ) и завершите его. - Если компьютер недоступен, а база лежит на файловом сервере, завершите открытые файлы базы. В Windows это
Управление компьютером → Служебные программы → Общие папки → Открытые файлы. Нужный файл называется1Cv8.1CD.
Принудительное завершение процесса 1С посреди записи может повредить файл базы. Перед этим сделайте копию папки с базой, а после проверьте базу тестированием и исправлением в Конфигураторе.
Как предупредить пользователей до завершения
Внезапный вылет из базы раздражает и стоит денег. Хватит пары минут на нормальное предупреждение.
- 📢 Сообщение в блокировке. Текст видят все, кто сидит в базе. Пишите коротко: «В 19:00 база закрывается на обновление, сохраните документы».
- 📢 Мессенджер или почта. Для людей, которые давно не двигают мышь в 1С, но держат окно открытым.
- 📢 Фиксированное окно. Договоритесь, что плановые работы идут в одно и то же время, например по пятницам после 19:00. Люди привыкают и сами выходят.
- 📢 Проверка перед началом. За 5 минут до срока загляните в список сеансов. Если осталось два-три человека, позвоните им.
Для крупной организации с десятками пользователей удобно вести небольшой список «кто всегда остаётся последним». Обычно это одни и те же 3–4 человека: главбух, кладовщик, оператор с ночной сменой.
Как реже сталкиваться с зависшими сеансами
Зависший сеанс проще предотвратить, чем потом разбирать.
- Обновляйте платформу. Часть зависаний тонкого клиента исправляется в новых релизах платформы. Посмотрите примечания к релизу на сайте поддержки.
- Следите за сетью. Обрыв Wi-Fi или VPN оставляет на сервере «сироту»: клиента уже нет, сеанс ещё числится. Такие сеансы видны по давней последней активности.
- Не давайте входить под одной учёткой. Когда пять человек работают под одним пользователем, в списке сеансов не разобраться, кого закрывать.
- Настройте завершение по бездействию. В свойствах информационной базы и в параметрах кластера есть тайм-ауты неактивных сеансов. Подберите их под свою нагрузку, чтобы не выбросить человека во время обеда.
Если не помогло
Бывает, что сеанс не закрывается ни одним из способов. Пройдите по списку.
- 🔍 Фоновое задание. Сеанс принадлежит регламентному заданию, а не человеку. Сначала отключите регламентные задания, затем закрывайте.
- 🔍 Внешнее соединение. Это может быть обмен, сайт или сервис на COM-соединении. Остановите приложение-источник.
- 🔍 Зависший рабочий процесс. В консоли откройте
Рабочие серверы → Рабочие процессыи посмотрите, какой процесс «держит» память и соединения. Его завершение закроет все его сеансы. - 🔍 Перезапуск службы. Служба «Агент сервера 1С:Предприятия» перезапускается только в окно обслуживания. Работа всех пользователей прервётся.
Перед перезапуском службы убедитесь, что нет работающих регламентных заданий и обмена. Прерванный обмен придётся запускать заново.
Типичные ошибки при закрытии сеансов
- ❌ Закрыли сеансы, но не включили блокировку. Через минуту пользователи вернулись, а обновление снова упёрлось в «в базе работают другие пользователи».
- ❌ Завершили сеанс с типом «Фоновое задание» и сломали выгрузку. Задание придётся запускать вручную.
- ❌ Потеряли код разрешения. Войти в заблокированную базу нельзя, пока не снимете блокировку в консоли или не дождётесь её окончания.
- ❌ Закрывали пользователей в разгар закрытия периода. Дата и время работ нужно согласовать с бухгалтерией.
- ❌ Убили процесс в диспетчере задач в файловой базе без копии и получили повреждённый файл.
Полный порядок для планового обслуживания
Три блока выше сводятся в одну последовательность перед обновлением или копированием базы.
Какой способ выбрать
session list, затем session terminate.Частые вопросы
Можно ли завершить сеанс 1С без потери данных?
Почему сеанс остаётся в консоли после завершения?
Как узнать, кто сейчас в базе?
Администрирование → Активные пользователи.Нужен ли доступ администратора, чтобы закрыть чужой сеанс?
Как войти в базу, если включена блокировка?
/UC и код разрешения, который указали при блокировке. Без него вход закрыт для всех.Можно ли закрывать сеансы по расписанию?
rac с планировщиком заданий Windows или cron. Сначала включайте блокировку, потом завершайте сеансы.