К статье
Практический материал

Администрирование · 9 мин

Как заблокировать 1С для обновления

Как заблокировать работу пользователей в 1С перед обновлением: через консоль кластера, кодом и функциональными опциями. Завершение сеансов, проверка и снятие блокировки.

Обновление конфигурации 1С нельзя безопасно выполнить, пока в базе работают пользователи. Активные сеансы удерживают монопольные блокировки на таблицах, а реструктуризация данных при обновлении требует монопольного доступа к информационной базе. Если запустить обновление без блокировки, процесс либо завершится ошибкой «Конфликт блокировок», либо, что хуже, прервётся на середине и оставит базу в неконсистентном состоянии.

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

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

Подготовка: что сделать до включения блокировки

Блокировка — это не первое действие, а часть процедуры. Сначала убедитесь, что у вас есть актуальная резервная копия базы: выгрузка в dt через конфигуратор или копия средствами СУБД для клиент-серверного варианта. Обновление без копии — главный источник необратимых потерь данных.

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

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

Блокировка сеансов в клиент-серверной базе через консоль кластера

Это основной способ для серверных баз. Откройте консоль кластера серверов 1С: Предприятия, найдите нужную информационную базу в списке, откройте её свойства (правая кнопка — «Свойства»). В разделе блокировки установите флаг «Блокировка начала сеансов включена», укажите время начала и окончания блокировки, текст сообщения пользователям и код разрешения.

Код разрешения — произвольная строка, например «Обновление2026». С ней можно войти в заблокированную базу: параметр /UC"КодРазрешения" в строке запуска толстого клиента или параметр UC в командной строке конфигуратора. Без кода новые сеансы будут отклоняться с текстом сообщения, который вы указали.

Уже открытые сеансы блокировка не закрывает автоматически. Их нужно завершить вручную: в консоли кластера перейдите в ветку «Сеансы», отсортируйте по базе и удалите сеансы пользователей. Удаление сеанса — принудительное: несохранённые данные пользователя будут потеряны, поэтому перед этим убедитесь, что все получили предупреждение.

Порядок блокировки через консоль кластера
  1. 1
    Откройте консоль кластера и свойства информационной базы
  2. 2
    Включите блокировку начала сеансов, задайте время, сообщение и код разрешения
  3. 3
    Проверьте список активных сеансов и фоновых заданий
  4. 4
    Завершите сеансы пользователей и остановите регламентные задания
  5. 5
    Войдите в конфигуратор с параметром /UC и выполните обновление
  6. 6
    После обновления снимите блокировку в свойствах базы

Блокировка файловой базы

В файловом варианте консоли кластера нет, поэтому блокировку выполняют программно или через типовой механизм. Если конфигурация построена на БСП (УТ, ERP, Бухгалтерия, ЗУП), используйте штатную обработку: раздел «Администрирование» — «Обслуживание» — «Блокировка работы пользователей». Там задаётся период блокировки, сообщение и код разрешения, а активные сеансы завершаются по таймауту с предупреждением.

Программный вариант — метод УстановитьБлокировкуСеансов. Он работает и в файловом, и в серверном режиме:

bsl
Блокировка = Новый БлокировкаСеансов;
Блокировка.Установлена = Истина;
Блокировка.Начало = ТекущаяДатаСеанса();
Блокировка.Конец = ТекущаяДатаСеанса() + 3600;
Блокировка.КодРазрешения = "Обновление";
Блокировка.Сообщение = "Идёт обновление базы, вход будет доступен через час";
УстановитьБлокировкуСеансов(Блокировка);

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

Завершение активных сеансов и фоновых заданий

Недостаточно запретить новые входы — нужно освободить базу от текущих подключений. В консоли кластера список сеансов показывает пользователя, приложение, время начала и активность. Сеансы фоновых заданий помечены отдельно; их тоже нужно завершить, иначе регламентные операции продолжат работать во время обновления.

Дополнительно отключите расписание регламентных заданий: в свойствах базы консоли кластера есть флаг «Блокировка регламентных заданий включена». Это предотвратит запуск новых фоновых задач на время обновления. Не забудьте снять эту блокировку после — иначе обмены, синхронизации и расчёты остановятся надолго.

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

Обновление конфигурации и снятие блокировки

Когда база заблокирована и сеансов нет, запустите конфигуратор с параметром /UC"КодРазрешения" (для серверной базы) или просто откройте файловую базу, если блокировка выставлена через БСП — конфигуратору она не мешает. Выполните обновление конфигурации базы данных (F7), дождитесь окончания реструктуризации.

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

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

Контрольные точки

Как проверить результат

Вход пользователя без кода разрешения
Норма

Во время работ — отказ с текстом сообщения; после снятия — нормальный вход

Тревожный признак

Вход доступен во время обновления или отказ после снятия блокировки

Список сеансов в консоли кластера
Норма

Только сеанс конфигуратора/администратора

Тревожный признак

Активные пользовательские или фоновые сеансы

Регламентные задания после обновления
Норма

Выполняются по расписанию

Тревожный признак

Не запускаются — забыли снять блокировку регламентных заданий

Типичные ошибки и ограничения

Самая частая ошибка — забыть код разрешения или не записать его. Тогда администратор сам не сможет войти в заблокированную базу; снять блокировку в этом случае можно только через консоль кластера (для серверной базы) или программно из внешнего подключения.

Вторая ошибка — обновление при живых фоновых заданиях. Даже если пользовательских сеансов нет, активное регламентное задание удерживает блокировки и обновление падает с конфликтом. Всегда проверяйте ветку «Сеансы» целиком, а не только пользовательские подключения.

Третья — забыть снять блокировку регламентных заданий. Пользователи работают, а обмены с сайтом, банком и ЭДО молча стоят. После каждого обновления проверяйте журнал регистрации на предмет выполнения регламентных операций.

Типичные ошибки
01
Обновление без резервной копии — при сбое реструктуризации базу восстановить неоткуда
02
Принудительное завершение сеансов без предупреждения — потеря несохранённых данных пользователей
03
Забытый код разрешения — администратор теряет доступ к собственной базе
04
Не снята блокировка регламентных заданий — останавливаются обмены и расчёты после обновления
05
Блокировка только новых сеансов без завершения текущих — обновление падает с конфликтом блокировок

FAQ

Можно ли обновить 1С без блокировки пользователей?

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

Что увидят пользователи при попытке войти в заблокированную базу?

Окно с текстом сообщения, которое вы указали при установке блокировки, и отказ в создании сеанса. Если сообщение не задано, пользователь увидит стандартное уведомление о блокировке начала сеансов без пояснений — поэтому текст стоит заполнять всегда.

Как войти в заблокированную базу администратору?

Через код разрешения: добавьте параметр /UC"КодРазрешения" в строку запуска клиента или укажите UC=КодРазрешения в командной строке конфигуратора. Для серверной базы блокировку можно также просто снять в консоли кластера, не зная кода.

Что делать, если обновление прервалось с ошибкой блокировок?

Проверьте в консоли кластера оставшиеся сеансы и фоновые задания, завершите их и повторите обновление. Если реструктуризация прервалась на середине и база не открывается — восстанавливайте резервную копию и повторяйте процедуру с полной блокировкой.

Нужно ли блокировать базу при обновлении платформы, а не конфигурации?

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

Итог

Что важно запомнить

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