Отключаем всех из базы 1С:Предприятия 8.3 — от штатной блокировки до rac

· 10 мин

Содержание

Закрыть сеансы пользователей 1С проще всего штатной блокировкой: Администрирование → Обслуживание → Блокировка работы пользователей, флажок запрета, время начала и кнопка установки. Через несколько минут программа сама завершит сеансы, а новые входы будут отклоняться. Если база клиент-серверная и пользователи «висят» — завершайте сеансы в консоли кластера или командой rac session terminate.

Ниже — все методы по порядку: от мягкого, когда люди успевают сохранить документы, до принудительного закрытия процессов в Windows. Для каждого метода указано, где он работает (файловая или серверная база) и чем рискуете.

Подготовка: кого отключаем и что проверить

Сначала выясните, какая у вас база. От этого зависит набор методов.

  • 📁 Файловая — в списке баз путь вида File="D:\Bases\Buh". Консоли кластера нет, сеансы — это процессы 1cv8.exe на компьютерах пользователей или на терминальном сервере.
  • 🖥 Клиент-серверная — строка вида Srvr="srv1c";Ref="buh". Есть кластер, консоль администрирования и утилита rac.

Затем проверьте, кто сейчас в базе. В конфигурациях на БСП (БП 3.0, ЗУП 3.1, УТ 11, КА, ERP) откройте Администрирование → Обслуживание → Активные пользователи. В старых релизах раздел называется «Поддержка и обслуживание». Список покажет имя пользователя, компьютер, приложение и время начала сеанса.

Перед отключением:

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

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

Завершение сеансов из режима Предприятия

Это основной и самый безопасный способ. Он работает и в файловой, и в серверной базе, потому что механизм встроен в конфигурацию (подсистема БСП).

Установка блокировки работы пользователей

  1. Откройте Администрирование → Обслуживание → Блокировка работы пользователей.
  2. Включите флажок запрета работы пользователей.
  3. Укажите время начала блокировки. Если нужно сейчас — поставьте текущее время плюс 5–10 минут.
  4. При необходимости задайте время окончания. Без него блокировка действует, пока вы её не снимете.
  5. Напишите сообщение для пользователей: «Обновление базы. Работа будет доступна после 19:30».
  6. Задайте код разрешения — любую строку, например upd2026. С ним вы сами сможете войти в заблокированную базу.
  7. Нажмите кнопку установки блокировки.

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

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

Завершение отдельного сеанса

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

В файловой базе отдельный сеанс из списка не завершить — только общей блокировкой.

Как войти в заблокированную базу

Запустите 1С с параметром кода разрешения:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /UCupd2026

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

Консоль кластера: отключение пользователей 1С на сервере

Для клиент-серверной базы есть отдельная оснастка — «Администрирование серверов 1С Предприятия». Она ставится вместе с сервером или отдельно компонентом «Администрирование сервера 1С:Предприятия».

Если оснастка не открывается или пишет об ошибке компонента, перерегистрируйте библиотеку из каталога нужной версии платформы (командная строка от имени администратора):

regsvr32 "C:\Program Files\1cv8\8.3.24.1586\bin\radmin.dll"

Номер версии в пути подставьте свой. Версия radmin.dll должна совпадать с версией сервера.

Порядок действий в консоли

  1. Разверните дерево: Central 1C:Enterprise 8.3 servers → имя сервера → Кластеры → кластер.
  2. Откройте Информационные базы → нужная база → Сеансы. Чтобы видеть сеансы всех баз сразу, откройте узел Сеансы на уровне кластера.
  3. Выделите сеанс (или несколько через Shift/Ctrl).
  4. Правая кнопка → Удалить. Это и есть завершение сеанса.

Консоль подключается к агенту сервера по порту 1540. Если на кластере задан администратор, при первом обращении появится запрос логина и пароля.

Как понять, какой сеанс завершать

Полезные колонки списка сеансов:

КолонкаЧто подсказывает
Пользователь, КомпьютерКто и откуда
ПриложениеТонкий клиент, Конфигуратор, Фоновое задание, COM-соединение, Web-сервис
Время вызова (текущее)Сколько длится текущий серверный вызов — большое значение говорит о долгой операции
Блокировано СУБД / Блокировано 1ССеанс ждёт блокировку, которую держит другой сеанс
Захвачено СУБДСколько времени сеанс держит соединение с СУБД

Если колонок не видно, включите их через настройку списка в меню «Вид» консоли.

Блокировка начала новых сеансов на уровне кластера

Завершённый пользователь через минуту зайдёт снова. Чтобы этого не случилось во время работ, поставьте запрет в свойствах самой базы на кластере. Он работает и без БСП, и даже если конфигурация не запускается.

  1. В консоли: Информационные базы → база → правая кнопка → Свойства.
  2. Введите имя и пароль администратора информационной базы (пользователя 1С с полными правами), если они заданы.
  3. Включите флажок «Блокировка начала сеансов включена».
  4. Заполните «Начало» и «Конец», «Сообщение» и «Код разрешения».
  5. Отдельно включите «Блокировка регламентных заданий включена» — иначе фоновые задания продолжат открывать сеансы.
  6. Нажмите OK.

Запрет действует на новые подключения. Уже открытые сеансы он не трогает — их завершают вручную, как описано выше.

Чем отличаются два вида блокировки

МетодГде ставитсяЧто делает с текущими сеансамиКогда выбирать
Блокировка работы пользователей (БСП)В режиме ПредприятияПредупреждает и сам завершаетПлановые работы, файловая база
Блокировка начала сеансов в кластереКонсоль или racНе трогает, только запрещает новыеСервер, конфигурация повреждена или не открывается
Удаление сеанса в консолиКонсоль или racОбрывает сразуЗависшие сеансы, срочное обновление

Не забудьте снять обе блокировки после работ. Блокировка в кластере и блокировка БСП — независимые флаги. Если снять только одну, пользователи всё равно не войдут.

Команды rac и параметры запуска для автоматизации

Когда базы обновляются по расписанию или их десятки, кликать в консоли неудобно. Для этого есть rac.exe — консольный клиент сервера администрирования.

Подготовка: сервер администрирования ras

rac работает не напрямую с кластером, а через службу ras. Её нужно запустить на сервере 1С (по умолчанию слушает порт 1545). Для разового использования:

"C:\Program Files\1cv8\8.3.24.1586\bin\ras.exe" cluster --port=1545 localhost:1540

Для постоянной работы зарегистрируйте ras как службу Windows — тогда он будет стартовать вместе с сервером.

Базовые команды

rac cluster list
rac infobase summary list --cluster=<uuid-кластера>
rac session list --cluster=<uuid-кластера> --infobase=<uuid-базы>
rac session terminate --cluster=<uuid-кластера> --session=<uuid-сеанса>

Если на кластере есть администратор, к каждой команде добавьте --cluster-user=<имя> --cluster-pwd=<пароль>.

Запрет новых сеансов и регламентных заданий одной командой:

rac infobase update --cluster=<uuid-кластера> --infobase=<uuid-базы> ^
  --infobase-user=Администратор --infobase-pwd=<пароль> ^
  --sessions-deny=on --scheduled-jobs-deny=on ^
  --denied-message="Обновление базы" --permission-code=upd2026

Снятие — та же команда с --sessions-deny=off --scheduled-jobs-deny=off. Остальные параметры смотрите в rac help infobase и rac help session.

Скрипт: завершить все сеансы одной базы

Пример на PowerShell. Он берёт первый кластер и обрывает все сеансы указанной базы.

$rac = "C:\Program Files\1cv8\8.3.24.1586\bin\rac.exe"
$ib  = "11111111-2222-3333-4444-555555555555"   # UUID базы из 'rac infobase summary list'

$cluster = ((& $rac cluster list | Select-String '^cluster\s*:' | Select-Object -First 1).Line -split ':')[1].Trim()

$sessions = & $rac session list --cluster=$cluster --infobase=$ib |
    Select-String '^session\s*:' |
    ForEach-Object { ($_.Line -split ':')[1].Trim() }

foreach ($s in $sessions) {
    & $rac session terminate --cluster=$cluster --session=$s
    Write-Output "Завершён сеанс $s"
}

Запускайте его после установки запрета начала сеансов, а не до: иначе часть пользователей успеет переподключиться.

Параметры запуска БСП-конфигураций

Типовые конфигурации на БСП понимают команды в параметре /C. Это удобно для ночных скриптов обновления:

1cv8.exe ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"ЗавершитьРаботуПользователей" /UCupd2026
1cv8.exe ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"РазрешитьРаботуПользователей" /UCupd2026

Первая команда устанавливает блокировку БСП и дожидается выхода пользователей, вторая её снимает. Пароль в открытом виде в bat-файле — компромисс; храните такие скрипты в папке с ограниченным доступом.

Принудительное закрытие на уровне Windows

Это крайняя мера: когда сеанс не завершается ни блокировкой, ни из консоли.

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

Файловая база

  • 🖥 Терминальный сервер . Диспетчер задач → вкладка «Пользователи» → выбрать пользователя → «Выйти». Или завершить только его процесс 1cv8.exe / 1cv8c.exe на вкладке «Подробности».
  • 📂 База в общей папке. На файловом сервере откройте Управление компьютером → Общие папки → Открытые файлы. Найдите открытые файлы 1Cv8.1CD и закройте их. Так обрываются «призраки» — клиенты, которые выключили компьютер, не выйдя из 1С.
  • ⌨️ Командой — закрыть все клиенты на терминальном сервере (с правами администратора):
taskkill /IM 1cv8.exe /F
taskkill /IM 1cv8c.exe /F

Эта команда закроет 1С у всех пользователей сервера, а не у одного. Для одного добавьте фильтр /FI "USERNAME eq ivanov".

Клиент-серверная база

Здесь на стороне сервера сеансы обслуживают рабочие процессы rphost.exe. Один процесс держит сеансы многих пользователей и часто нескольких баз.

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

💡 Закрыть 1cv8c.exe на компьютере пользователя недостаточно. Серверный сеанс останется в кластере, пока не истечёт таймаут, и продолжит занимать лицензию. Удалите его в консоли.

Почему сеансы зависают и как это предотвратить

Зависший сеанс — тот, что висит в кластере или в списке активных пользователей, хотя человек давно ушёл. Или тот, что не завершается командой удаления.

Диагностика: выберите симптом

Как сделать, чтобы сеансы не копились

  • ⏱ Настройте в свойствах базы на кластере время засыпания пассивного сеанса и время завершения спящего сеанса. Тогда брошенные сеансы будут закрываться автоматически.
  • 🔌 Отключите на клиентах энергосбережение сетевых адаптеров и сон компьютера во время рабочего дня — обрывы сети порождают «призраков».
  • 📋 Уберите лишние регламентные задания или перенесите тяжёлые на ночь.
  • 🧑‍💻 Попросите пользователей выходить из 1С через меню, а не закрывать крышку ноутбука с открытой базой.
  • 📝 Для обновлений держите готовый скрипт: блокировка → завершение сеансов → обновление → снятие блокировки.

Частые вопросы

Пользователь увидит, что его отключили?
Да. При штатной блокировке он заранее получает предупреждение с вашим текстом. При удалении сеанса в консоли клиент при следующем обращении к серверу выдаёт сообщение о том, что сеанс отсутствует или удалён.
Нужен ли пароль администратора, чтобы завершить сеансы?
Для блокировки в режиме Предприятия нужны права администратора в конфигурации. Для консоли кластера — пароль администратора кластера, если он задан, а для изменения свойств базы ещё и логин администратора информационной базы.
Почему после удаления сеанса лицензия освободилась не сразу?
Лицензию держит сеанс, а не окно программы. Пока сеанс есть в кластере, лицензия занята. После удаления сеанса она освобождается, но клиент с программной лицензией может сразу занять её снова при повторном входе.
Можно ли завершить сеанс фонового задания?
Можно, но задание прервётся посередине. Если это обмен или закрытие месяца — дождитесь окончания или потом перезапустите операцию целиком.
Блокировка не снимается, пользователи не входят. Что проверить?
Проверьте оба места: форму блокировки в режиме Предприятия и флажок блокировки начала сеансов в свойствах базы на кластере. Это независимые настройки, снимать нужно обе.