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

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

Как узнать, кем занята лицензия 1С

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

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

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

Ниже разобраны рабочие способы для обоих режимов, признаки «зависших» сеансов, типичные ошибки при освобождении лицензий и ответы на частые вопросы администраторов.

Как 1С расходует лицензии и почему они «заканчиваются»

Лицензия 1С занимается сеансом пользователя или фоновым процессом, а не самим фактом установки программы. Один пользователь может занять несколько лицензий: например, открыл «1С:Предприятие» на двух компьютерах, запустил толстый и тонкий клиент одновременно или у него остался висеть сеанс после аварийного завершения.

В клиент-серверном варианте лицензии раздаёт сервер 1С:Предприятия (или программные лицензии, активированные на нём). В файловом варианте лицензия проверяется на компьютере пользователя или на сервере, где размещён файл базы, если используется многопользовательский ключ HASP.

Типичные причины, из-за которых «лицензии кончились», хотя реально работающих людей меньше: аварийное завершение клиента без завершения сеанса на сервере, отключение компьютера по сети, фоновые задания, запущенные от имени пользователей, и сеансы соединений через веб-сервисы или COM-соединения, которые тоже потребляют лицензии.

Просмотр занятых лицензий в консоли кластера серверов

Основной инструмент для клиент-серверного режима — консоль администрирования серверов 1С. Откройте её, разверните нужный кластер, затем ветку «Информационные базы» и выберите базу. Два раздела дают полную картину: «Сеансы» и «Соединения».

В списке сеансов видно имя пользователя информационной базы, компьютер, с которого установлено подключение, время начала сеанса, приложение (тонкий клиент, толстый клиент, веб-клиент, фоновое задание, COM-соединение) и текущую активность. Именно здесь обычно обнаруживаются «лишние» лицензии: старые сеансы с датой начала несколько дней назад или дублирующиеся сеансы одного пользователя.

Порядок действий в консоли кластера
  1. 1
    Откройте консоль администрирования серверов 1С и подключитесь к нужному серверу.
  2. 2
    Разверните кластер → Информационные базы → нужная база → Сеансы.
  3. 3
    Отсортируйте список по пользователю или времени начала и найдите дубли и устаревшие сеансы.
  4. 4
    Проверьте колонку «Приложение»: фоновые задания и COM-соединения тоже занимают лицензии.
  5. 5
    При необходимости завершите неактивный сеанс через контекстное меню, предварительно убедившись, что пользователь не работает.

Как отличить активный сеанс от зависшего

Зависший сеанс обычно имеет давнее время начала, нулевую или почти нулевую активность (колонки «Прочитано», «Записано», время последнего вызова СУБД) и пользователь при этом подтверждает, что программа у него закрыта. Также подозрительны сеансы с компьютеров, которые выключены или ушли из сети.

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

Проверка в файловом режиме через список активных пользователей

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

Тот же список доступен из конфигуратора: меню «Администрирование» → «Активные пользователи». Отсюда же можно удалить зависшее подключение, выбрав пользователя и нажав «Удалить».

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

Журнал регистрации и технологический журнал

Журнал регистрации помогает восстановить историю: кто и когда подключался и отключался. Откройте его через конфигуратор («Администрирование» → «Журнал регистрации») и отфильтруйте по событиям «Сеанс. Начало» и «Сеанс. Завершение». Так можно увидеть, у какого пользователя сеанс начался, но не завершился штатно.

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

Программная проверка занятых лицензий

Если контроль нужен регулярно, список сеансов можно получить программно — встроенным языком 1С через объект «ПолучитьСеансыИнформационнойБазы» (для файлового режима и с правами администратора) или через RAC-утилиту командной строки для кластера серверов.

bash
rac session --cluster=<ид_кластера> list --infobase=<ид_базы>

Утилита rac входит в состав сервера 1С и позволяет выгружать список сеансов в скрипты, например для автоматического оповещения администратора, когда число сеансов приближается к лимиту лицензий. Это удобнее, чем вручную заходить в консоль каждый раз при жалобах пользователей.

Как корректно освободить занятую лицензию

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

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

Типичные ошибки
01
Удаление активного сеанса без предупреждения пользователя — теряются несохранённые данные в открытых документах.
02
Перезагрузка сервера вместо точечного завершения зависших сеансов — страдают все пользователи сразу.
03
Игнорирование фоновых заданий и COM-соединений: они незаметно держат лицензии, хотя в списке «пользователей» их не видно.
04
Покупка дополнительных лицензий без анализа: часто проблема решается завершением зависших сеансов, а не расширением лицензионного пула.

Профилактика: чтобы лицензии не «утекали»

Несколько простых мер заметно сокращают число проблем. Настройте завершение сеанса при неактивности в свойствах информационной базы. Научите пользователей закрывать 1С через «Файл → Завершить работу», а не крестиком на удалённом рабочем столе — при обрыве RDP-сессии сеанс 1С остаётся висеть на сервере.

Раз в неделю просматривайте список сеансов на предмет дублей и «старожилов». Если в компании используются обмены через COM или веб-сервисы, убедитесь, что после выполнения операций соединения закрываются, а не остаются открытыми.

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

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

Количество сеансов в консоли кластера
Норма

Число сеансов соответствует реально работающим пользователям и фоновым процессам

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

Сеансов заметно больше, чем людей; есть сеансы с началом несколько дней назад

Наличие дублей у одного пользователя
Норма

Один пользователь — один-два сеанса (например, клиент + фоновое задание)

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

Один пользователь держит 3 и более клиентских сеансов

Доступность входа новым пользователям
Норма

Вход выполняется без ошибки «не найдено лицензии»

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

Ошибка повторяется, хотя список сеансов очищен — проверяйте активацию программных лицензий или ключ HASP

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

Один пользователь занимает несколько лицензий — это нормально?

Да, если он открыл несколько клиентских приложений (например, два окна «1С:Предприятие» или клиент на двух компьютерах). Каждый сеанс тратит отдельную лицензию. Если пользователь работает только в одном окне, а сеансов несколько — ищите зависшие подключения и завершайте лишние.

Пользователь закрыл 1С, но лицензия всё ещё занята. Что делать?

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

Занимают ли лицензию фоновые задания и обмены данными?

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

Как посмотреть занятые лицензии без прав администратора?

Полный список сеансов доступен только администратору кластера или пользователю с административными правами в базе. Обычный пользователь может увидеть активных пользователей только если в конфигурации ему доступна соответствующая обработка или роль. Иначе обращайтесь к администратору 1С.

Консоль показывает мало сеансов, но ошибка «не найдено лицензии» остаётся. Где искать причину?

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

Можно ли автоматически завершать неактивные сеансы?

Да. В свойствах информационной базы в консоли кластера задаётся время завершения неактивных сеансов. Установите разумный интервал (например, несколько часов), чтобы забытые сеансы освобождали лицензии, но активная работа не прерывалась.

Итог

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

Лицензию в 1С занимает сеанс, а не пользователь как таковой. Список занятых лицензий смотрят в консоли кластера (клиент-сервер) или в списке активных пользователей (файловый режим). Зависшие сеансы завершайте точечно после проверки, а регулярные «утечки» лечите настройкой таймаутов неактивности и корректным закрытием программы пользователями.