Пользователи не могут войти в базу 1С: снимаем запрет сеансов, зависшие сеансы и файловые блокировки
Содержание
Чтобы отключить блокировку пользователей в 1С 8.3, откройте Администрирование → Обслуживание → Блокировка работы пользователей и снимите блокировку. Если программа не пускает даже администратора, запустите базу с параметром /UC<код разрешения>. В клиент-серверной базе тот же флажок есть в свойствах информационной базы в консоли кластера.
Частое заблуждение — что «блокировка» в 1С одна. На деле их минимум четыре: запрет начала сеансов, зависший сеанс, занятый файл базы и запрет входа для конкретной учётной записи. Лечатся они по-разному, поэтому сначала определите, какая у вас. Инструкция общая для платформы 8.3 и типовых конфигураций на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11).
Откуда берётся блокировка пользователей в 1С
Разберите по тексту сообщения, которое видит пользователь при входе.
| Что видит пользователь | Вид блокировки | Где снимать |
|---|---|---|
Начало сеанса с информационной базой запрещено и текст администратора | Установлен запрет новых сеансов | В программе или в консоли кластера |
База открывается, но документ не записывается: Конфликт блокировок при выполнении транзакции | Блокировка данных чужим сеансом | Консоль кластера, завершение сеанса |
Файловая база: Файл базы данных используется другим процессом или ошибка совместного доступа | Файл занят зависшим процессом | Диспетчер задач, «Открытые файлы» Windows |
Пользователь ИБ не идентифицирован при верном пароле или отказ во входе конкретному сотруднику | Запрет входа для учётной записи | Карточка пользователя в программе |
Откуда берутся такие ситуации на практике:
- 🔒 администратор поставил блокировку перед обновлением и забыл её снять, или обновление упало на середине;
- 🔒 регламентная операция (закрытие месяца , свёртка базы) запущена с запретом входа;
- 🔒 у пользователя оборвалась связь, а сеанс остался висеть на сервере и держит данные;
- 🔒 на одном из компьютеров «завис» процесс 1cv8.exe, который не отпускает файл базы;
- 🔒 учётную запись отключили при увольнении или по сроку бездействия.
Как снять блокировку работы пользователей прямо из 1С
Это основной способ для файловых и серверных баз на типовых конфигурациях.
Если вы можете войти в программу
- Войдите под пользователем с полными правами.
- Откройте
Администрирование → Обслуживание. - Нажмите ссылку
Блокировка работы пользователей. - Снимите блокировку кнопкой на форме или уберите флажок установки блокировки и сохраните.
- Попросите сотрудника перезапустить 1С.
В этой же форме видно время начала и окончания блокировки. Если окончание указано, блокировка снимется сама в это время. Проверьте поля: иногда «сломанная» база просто ждёт заданного часа.
Если программа не пускает и администратора
При установке блокировки БСП позволяет задать код разрешения. С ним вход открыт даже при действующем запрете. Запустите базу через командную строку или добавьте параметр в настройки ярлыка:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /UC12345
Здесь 12345 — код разрешения, который вводил администратор. Для серверной базы вместо /F укажите /S"сервер\имя_базы".
Если код никто не помнит, используйте параметр запуска БСП, который снимает блокировку при входе:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /S"srv1c\buh" /N"Администратор" /P"пароль" /C"РазрешитьРаботуПользователей"
Параметр /C"РазрешитьРаботуПользователей" обрабатывает сама конфигурация на БСП. В самописной или очень старой конфигурации он может не сработать. Тогда снимайте блокировку в консоли кластера или через Конфигуратор.
Особенность файловой базы
У файловой базы нет консоли кластера, поэтому запрет сеансов снимается только изнутри: через форму блокировки, запуск с /UC или с параметром /C"РазрешитьРаботуПользователей". Удалять файлы из каталога базы ради снятия этого запрета бесполезно: он хранится в данных, а не в служебном файле 1Cv8.1CL. Если ни один способ не сработал, остаётся восстановить базу из копии, сделанной до блокировки.
Снятие блокировки в консоли администрирования серверов 1С
В клиент-серверном варианте самый надёжный путь — консоль кластера. Она работает, даже если в саму базу не войти.
Снять запрет начала сеансов
- Откройте
Администрирование серверов 1С Предприятия. - Раскройте
Центральный сервер → Кластеры → ваш кластер → Информационные базы. - Откройте свойства нужной базы. Консоль запросит логин и пароль администратора этой базы.
- Снимите флажок
Блокировка начала сеансов включена. - Проверьте флажок
Блокировка регламентных заданий включена: после обновления его часто забывают снять, и обмены перестают работать. - Нажмите ОК.
В тех же свойствах видны поля начала и конца блокировки, сообщение и код разрешения. По ним легко понять, кто и когда закрыл базу.
Найти и завершить сеанс, который держит данные
Если ошибка выглядит как Конфликт блокировок при выполнении транзакции: Превышено максимальное время ожидания предоставления блокировки, виноват чужой сеанс.
- В ветке базы откройте узел
Блокировкии найдите, какой сеанс держит объект. - Перейдите в узел
Сеансы, найдите этот сеанс по номеру. - Посмотрите пользователя, компьютер и время последней активности.
- Позвоните пользователю: возможно, у него открыта длительная операция, которую жалко прерывать.
- Если сеанс завис, вызовите на нём команду удаления сеанса из контекстного меню.
Завершение сеанса обрывает работу пользователя без сохранения. Незаписанный документ пропадёт, а прерванная транзакция откатится целиком. Делайте это после звонка сотруднику.
Если консоль не открывается с ошибкой о классе, перерегистрируйте radmin.dll нужной версии платформы командой regsvr32 из папки bin от имени администратора. Версия консоли должна совпадать с версией сервера.
Команды rac и роль процесса rmngr на сервере
Утилиты «rmngr» для ручного управления блокировками нет. rmngr — это процесс менеджера кластера, он работает в составе службы сервера 1С вместе с агентом ragent и рабочими процессами rphost. Управляют кластером из командной строки утилитой rac, которой нужен запущенный сервер администрирования ras.
Базовый порядок работы с rac:
rem Запустить сервер администрирования (если ещё не запущен)
ras cluster --daemon
rem Узнать идентификатор кластера
rac cluster list
rem Список баз кластера
rac infobase summary list --cluster=<uuid_кластера>
rem Снять запрет начала сеансов и регламентных заданий
rac infobase update --cluster=<uuid_кластера> --infobase=<uuid_базы> --infobase-user=Администратор --infobase-pwd=пароль --sessions-deny=off --scheduled-jobs-deny=off
rem Список сеансов и завершение зависшего
rac session list --cluster=<uuid_кластера> --infobase=<uuid_базы>
rac session terminate --cluster=<uuid_кластера> --session=<uuid_сеанса>
Если в кластере задан администратор, добавьте --cluster-user и --cluster-pwd. Полный список параметров для вашей версии выводит rac help infobase и rac help session.
rac удобен, когда на сервере нет графической консоли или блокировку нужно снимать по расписанию, например после ночного обновления.
Когда сеансы «воскресают» после удаления
Бывает, что сеанс удалили, а через минуту он снова в списке, или в консоли висят сеансы давно выключенных компьютеров. Причина обычно в кеше сеансов кластера. Порядок лечения:
- Предупредите всех пользователей: остановка службы сервера 1С отключит всех от всех баз кластера.
- Остановите службу
Агент сервера 1С:Предприятия 8.3. - В каталоге кластера (по умолчанию
srvinfo\reg_1541) переместите в отдельную папку каталогиsnccntx*. - Запустите службу и проверьте список сеансов.
Каталоги snccntx содержат сеансовые данные и пересоздаются при запуске. Файлы реестра кластера 1CV8Clst.lst и папки с базами не трогайте.
Как разблокировать файловую базу 1С, если занят файл
В файловом варианте база — это каталог с файлом 1Cv8.1CD. Рядом лежит служебный файл 1Cv8.1CL, через который сеансы договариваются о совместном доступе. Если какой-то процесс «завис», файл остаётся занятым и база не открывается у остальных.
Порядок действий от мягкого к жёсткому:
- Попросите всех закрыть 1С и проверьте, что окна действительно закрылись.
- На каждом компьютере откройте диспетчер задач и завершите процессы
1cv8.exe,1cv8c.exe,1cv8s.exe, если они остались после закрытия окон. - Если база лежит в общей папке, на компьютере с этой папкой откройте
Управление компьютером → Общие папки → Открытые файлы. Найдите в списке1Cv8.1CDили1Cv8.1CLи закройте их. - Если база опубликована на веб-сервере, перезапустите службу веб-сервера: её процесс тоже держит файл.
- Только после этого, убедившись, что к базе никто не подключён, удалите файл
1Cv8.1CL. Платформа создаст его заново при следующем входе.
Никогда не удаляйте и не переименовывайте 1Cv8.1CD: это сама база. Удаление 1Cv8.1CL при работающих пользователях может повредить данные, поэтому сначала шаги 1–4 и свежая копия каталога базы.
После снятия файловой блокировки запустите базу один раз в одиночку и убедитесь, что она открывается без ошибок. Если платформа сообщает о повреждении, остановитесь и проверьте базу утилитой chdbfl.exe из каталога bin платформы на копии.
Запрет входа для отдельного пользователя
Если не пускает одного сотрудника, а остальные работают нормально, дело не в блокировке базы, а в его учётной записи.
- Откройте
Администрирование → Настройки пользователей и прав → Пользователи. - Найдите сотрудника. Отключённые записи обычно видны с отметкой или скрыты фильтром: включите показ недействительных пользователей.
- В карточке откройте свойства входа и установите флажок
Вход в программу разрешен. - Проверьте ограничение срока действия входа: если дата прошла, продлите или снимите её.
- Запишите карточку и попросите сотрудника войти заново.
В БСП есть настройки входа, которые отключают пользователей автоматически, например после долгого простоя без входа. Найти их можно в том же разделе Настройки пользователей и прав. Если сотрудников «выбивает» регулярно, причина почти наверняка там.
Если записи пользователя нет в справочнике, но в Конфигураторе (Администрирование → Пользователи) он есть, запись программы и пользователь информационной базы разошлись. Восстанавливайте связь через карточку в режиме «Предприятие», а не правкой в Конфигураторе.
Администрирование → Обслуживание → Блокировка работы пользователей. Нет доступа — запуск с /UC<код> или флажок в свойствах базы в консоли кластера.Профилактика: настройки сеансов, чтобы блокировки не повторялись
Большинство повторных случаев закрываются тремя настройками и одним правилом.
Задайте окончание блокировки
При установке запрета перед обновлением сразу указывайте время окончания. Если что-то пойдёт не так ночью, утром база откроется сама. Заполняйте и сообщение для пользователей: «Обновление до 7:00, вопросы — Иванову, доб. 214».
Настройте завершение спящих сеансов
В свойствах информационной базы в консоли кластера есть два параметра:
- ⏱
Время засыпания пассивного сеанса— через сколько секунд бездействия сеанс клиента «засыпает» и освобождает лицензию; - ⏱
Время завершения спящего сеанса— через сколько секунд спящий сеанс удаляется совсем.
Разумная пара для бухгалтерии: засыпание через 1200 секунд (20 минут), завершение через 28 800 секунд (8 часов). Так забытый на ночь сеанс не будет держать данные утром.
Проверьте время ожидания блокировки данных
В Конфигураторе: Администрирование → Параметры информационной базы → Время ожидания блокировки данных. По умолчанию — 20 секунд. Поднимать его до минут нельзя: пользователи будут просто дольше ждать перед той же ошибкой. Если конфликт повторяется, ищите долгую операцию, которая держит данные, и переносите её на ночь.
Не держите базу в монопольном режиме дольше нужного
Монопольный доступ нужен для обновления структуры конфигурации, загрузки файла .dt, тестирования и исправления. Закончили — закройте Конфигуратор и снимите запрет. Оставленный открытым Конфигуратор с незавершённым обновлением — частая причина «вечной» блокировки.