← На главную
В процессе административной работы с информационной базой 1С можно столкнуться с нетипичной проблемой: при попытке открыть Конфигуратор система выдает сообщение о том, что база заблокирована неким пустым пользователем. При этом в списке активных пользователей этот сеанс может отсутствовать либо отображаться без имени и прав, а принудительное завершение сеанса через консоль кластера не дает результата.
Рассмотрим подробнее причины возникновения подобной ошибки и разберем по шагам доступные методы её устранения.
Причины возникновения «фантомных» сеансов
Проанализируем ситуацию: почему система видит заблокированную конфигурацию, но не может идентифицировать конкретного пользователя.
- Зависшее окно авторизации: Самая распространенная причина. Если кто-то из сотрудников или разработчиков запустил Конфигуратор, но оставил открытым окно ввода логина и пароля (диалог аутентификации), платформа 1С захватывает монопольную блокировку на изменение конфигурации. При этом имя пользователя еще не передано серверу, поэтому сеанс числится пустым.
- Аварийный разрыв сетевого соединения: При внезапном отключении ПК пользователя или сбое в работе клиента 1С сетевой сокет на сервере остается открытым. Кластер серверов 1С считает данное подключение активным до наступления системных таймаутов.
- Зависшие внешние и фоновые соединения: Скрипты автоматического резервного копирования, внешние сервисы по COM-соединению или HTTP/REST-запросы, пытающиеся подключиться к базе без передачи учетных данных, могут создавать анонимные фоновые блокировки.
Методы решения проблемы
Разберем способы снятия блокировки Конфигуратора — от быстрых точечных действий до радикальных мер.
Способ 1. Закрытие зависшего окна авторизации
Если известно, на каком рабочем месте мог остаться незавершенный запуск 1С, проверьте запущенные процессы на этом компьютере. Закрытие диалогового окна авторизации или снятие процесса 1cv8.exe мгновенно освобождает базу.
Способ 2. Завершение соединения в консоли кластера 1С
Частая ошибка системных администраторов — попытка завершить запись только в ветке «Сеансы». Для полного удаления соединения необходимо пройти в консоль администрирования кластера серверов 1С:
- Откроем консоль кластера серверов 1С.
- Перейдем в дерево нашей информационной базы и откроем ветку «Соединения» (а не «Сеансы»).
- Найдем анонимное соединение или соединение без имени пользователя и удалим его вручную.
Способ 3. Точечное завершение рабочего процесса rphost
Чтобы не перезапускать службу агента целиком и не прерывать работу остальных пользователей информационной базы, выполним точечное завершение процесса:
- В консоли кластера определим номер PID рабочего процесса
rphost.exe, удерживающего фантомный сеанс.
- Запустим Диспетчер задач или командную строку на сервере приложений.
- Завершим конкретный процесс
rphost.exe с помощью команды:
taskkill /PID <номер_процесса> /F
Способ 4. Перезапуск перезапускаемых процессов или перезагрузка сервера
Если предыдущие действия не помогли, применяются методы перезапуска служб:
- В свойствах кластера серверов можно установить параметр «Интервал перезапуска» (например, 20 секунд), подождать одну минуту и вернуть параметр в исходное состояние. Рабочие процессы перезапустятся автоматически.
- Выполним перезапуск службы «Агент сервера 1С:Предприятия» через оснастку служб ОС.
- При крайних случаях выполним полную перезагрузку сервера, где расположена служба 1С. Это гарантированно очистит все подвисшие сетевые соединения и сокеты.
Рекомендации по профилактике
Чтобы свести к минимуму появление фантомных пользователей в дальнейшем, рекомендуем выполнить следующие настройки:
- Передача параметров авторизации в скриптах: Во всех командных файлах и скриптах автоматической выгрузки/обновления конфигурации обязательно передавайте ключи логина
/N"ИмяПользователя" и пароля /P"Пароль", чтобы предотвратить остановку скрипта на окне авторизации.
- Настройка таймаутов TCP Keep-Alive: В реестре операционной системы сервера уменьшите параметры
KeepAliveTime и KeepAliveInterval. Это позволит ОС быстрее обнаруживать и закрывать «мертвые» сетевые соединения при сбоях у клиентов.
- Блокировка сеансов перед обслуживанием: Перед проведением работ в Конфигураторе устанавливайте блокировку начала сеансов в режиме «1С:Предприятие» (раздел Администрирование > Блокировка работы пользователей).