Сколько лицензий 1С установлено и занято: проверка ключей, файлов и сеансов

· 10 мин

Содержание

Количество лицензий 1С на сервере быстрее всего узнать командой rac session list --licenses: в ответе по каждому сеансу есть поле max-users-all — ёмкость комплекта, из которого выдана лицензия. Если лицензии аппаратные, то же число покажет Aladdin Monitor по сетевому ключу HASP, а для программных лицензий — утилита ring license info.

Ниже разобраны все способы проверки для 1С 8.3 на Windows Server и Linux: какие лицензии установлены, сколько из них занято прямо сейчас и откуда их получает каждый пользователь.

Какие лицензии вообще могут стоять на сервере

Прежде чем считать, разделите два вида лицензий. Их часто путают, и отсюда половина недоразумений при проверке.

  • 🖥️ Лицензия сервера 1С:Предприятия. Разрешает запуск самого кластера. Число пользователей она не задаёт: бывают 32-битная, 64-битная и редакция КОРП.
  • 👥 Клиентские лицензии. Именно они ограничивают число одновременно работающих пользователей. Комплекты бывают на 1, 5, 10, 20, 50, 100, 300 и 500 мест.

Клиентские лицензии бывают двух форм:

ФормаГде хранитсяЧем проверять
Аппаратная (ключ HASP)USB-ключ в сервере или на отдельной машине с менеджером лицензийAladdin Monitor, консоль кластера, rac
ПрограммнаяФайлы .lic в каталоге лицензийring license, консоль кластера, rac

Если на сервер поставили клиентские программные лицензии, сервер 1С сам раздаёт их подключающимся клиентам. Тогда «сколько лицензий на сервере» — это сумма всех установленных комплектов.

Комплекты складываются. Основная поставка на 1 место плюс два комплекта по 10 дают 21 одновременного пользователя.

Аппаратные ключи HASP: как посмотреть ёмкость

Сетевой многопользовательский ключ HASP обслуживает служба HASP License Manager. Она слушает порт 475 и раздаёт места клиентам в локальной сети.

Проверка через Aladdin Monitor

Aladdin Monitor — бесплатная утилита производителя ключей. Ставится на любую машину в той же сети.

  1. Установите и запустите Aladdin Monitor.
  2. В дереве слева раскройте узел менеджера лицензий. Он появляется под именем компьютера, к которому подключён ключ.
  3. Выберите ключ и посмотрите строку с максимальным числом станций (Max stations). Это и есть ёмкость ключа.
  4. Ниже идёт таблица подключений: сколько мест занято сейчас и какими компьютерами.

Если в мониторе пусто, менеджер лицензий не найден. Проверьте, что служба HASP License Manager запущена, а порт 475 (TCP и UDP) не закрыт брандмауэром.

Маркировка на самом ключе

На корпусе ключа и в коробке поставки указан комплект: однопользовательский, на 5, 10, 20 мест и так далее. Цвет ключа тоже кое-что говорит, но надёжнее смотреть маркировку и монитор.

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

Если ключ стоит прямо на сервере 1С

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

Программные лицензии: файлы .lic и утилита ring

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

Где лежат файлы лицензий

Платформа ищет их в нескольких каталогах:

ОСКаталог
Windows, общий для всех пользователейC:\ProgramData\1C\licenses
Windows, профиль пользователя%APPDATA%\1C\licenses
Linux, общий/var/1C/licenses
Linux, профиль пользователя~/.1cv8/1C/licenses

Для сервера смотрите общий каталог. Служба сервера обычно работает под отдельной учётной записью (например, USR1CV8), и лицензия в профиле администратора ей не видна.

Количество файлов — ещё не количество мест. Файл с комплектом на 10 пользователей и файл основной поставки на 1 выглядят одинаково. Содержимое .lic открывать вручную бесполезно, нужна утилита.

Проверка через ring

Вместе с платформой ставится утилита лицензирования ring (пакет license-tools). Две нужные команды:

ring license list
ring license info --name <имя_лицензии>

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

Запускайте ring от имени пользователя, у которого есть доступ к каталогу лицензий, иначе список будет пустым. Если команда не находится, перейдите в каталог установки утилиты или посмотрите параметры через ring help.

Не переносите и не переименовывайте файлы .lic «для наведения порядка». Лицензия привязана к оборудованию, и после неаккуратных действий её придётся активировать заново по резервному пин-коду.

Проверка из клиента 1С

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

Консоль администрирования серверов: занятые лицензии в реальном времени

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

Как добраться до списка

  1. Запустите «Администрирование серверов 1С Предприятия» на сервере или на машине администратора.
  2. Подключитесь к центральному серверу (агент кластера, порт 1540 по умолчанию).
  3. Раскройте кластер и найдите узел «Сеансы». У сеансов есть вложенный узел «Лицензии» со списком полученных лицензий.
  4. Аналогичный узел есть у каждого рабочего процесса: там видно, какие лицензии получил именно он.

В списке лицензий смотрите на тип (программная или ключ), признак выдачи сервером, максимальное число пользователей в комплекте и текущее использование.

Если консоль не открывается

Типичная ситуация после обновления платформы: оснастка не запускается или ругается при подключении. Помогает повторная регистрация библиотеки консоли от имени администратора:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\RegMSC.cmd"

Вместо 8.3.xx.xxxx подставьте номер установленной версии. Скрипт перерегистрирует radmin.dll нужной версии, после чего консоль снова видит кластер.

Командная строка: rac и ras

Через rac лицензии проверяют на Linux-серверах без графики, а также в скриптах и мониторинге. Утилита обращается не к агенту кластера напрямую, а к серверу администрирования ras.

Шаг 1. Запустить ras

На Linux достаточно запустить:

/opt/1cv8/x86_64/8.3.xx.xxxx/ras cluster --daemon

На Windows ras удобно зарегистрировать службой:

sc create "1C:Enterprise 8.3 Remote Server" binPath= "\"C:\Program Files\1cv8\8.3.xx.xxxx\bin\ras.exe\" cluster --service --port=1545 localhost:1540" start= auto DisplayName= "1C:Enterprise 8.3 Remote Server"

По умолчанию ras слушает порт 1545.

Шаг 2. Узнать идентификатор кластера

rac localhost:1545 cluster list

Из вывода возьмите значение поля cluster. Если на кластере заданы администраторы, к каждой следующей команде добавьте --cluster-user и --cluster-pwd.

Шаг 3. Вывести лицензии сеансов

rac localhost:1545 session list --cluster=<uuid_кластера> --licenses

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

  • 🔢 max-users-all — на сколько пользователей рассчитан комплект, из которого взята лицензия;
  • 📊 max-users-cur — сколько мест этого комплекта сейчас доступно с учётом уже выданных;
  • 🔑 license-type — soft (программная) или HASP (ключ);
  • 🖧 issued-by-server — yes, если лицензию выдал сервер 1С, а не клиент взял её сам;
  • 🏷️ series — серия ключа или регистрационный номер программной лицензии;
  • 👤 user-name и host — кто и с какого компьютера держит лицензию.

Пример подсчёта

Допустим, в выводе 14 блоков: 12 с series первого комплекта и max-users-all: 10, ещё 2 со второй серией и max-users-all: 5.

Значит, на сервере два комплекта: на 10 и на 5 мест, итого 15. Занято 14 мест — свободно одно. Если 12 сеансов показывают комплект на 10, ищите повторяющиеся host: сеансы с одного компьютера, как правило, делят одну клиентскую лицензию.

Для быстрого подсчёта на Linux:

rac localhost:1545 session list --cluster=<uuid_кластера> --licenses | grep -E "series|max-users-all" | sort | uniq -c

Если сомневаетесь в синтаксисе для вашей версии платформы, смотрите встроенную справку: rac help session.

Журналы: история использования лицензий

Консоль и rac показывают картину на текущую минуту. Чтобы понять, сколько лицензий нужно в пиковые часы, нужна история.

Журнал регистрации

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

Что сделать:

  1. Установите отбор по событиям начала и завершения сеанса.
  2. Выберите период, например рабочую неделю.
  3. Выгрузите журнал в файл и посчитайте максимум одновременных сеансов в Excel по времени входа и выхода.

У метода есть ограничение: журнал ведётся по каждой базе отдельно. Если на сервере 5 баз, а лицензии общие, пики придётся сводить вручную. Учтите и то, что фоновые задания и служебные сеансы клиентскую лицензию не занимают.

Технологический журнал

Для точного учёта по всему кластеру включают технологический журнал с событием LIC — оно пишется при операциях с лицензиями. Настройка задаётся файлом logcfg.xml в каталоге conf платформы:

<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="C:\techlog\lic" history="72">
    <event>
      <eq property="name" value="LIC"/>
    </event>
    <property name="all"/>
  </log>
</config>

Параметр history задаёт хранение в часах. После сбора данных удалите или переименуйте logcfg.xml, чтобы журнал не рос бесконечно. Каталог для логов выбирайте на диске с запасом места.

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

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

Как сопоставить пик с ёмкостью

Когда история собрана, сравните три числа:

  1. Ёмкость — сумма max-users-all по всем разным сериям из вывода rac.
  2. Пик — максимум одновременных сеансов за неделю по журналу.
  3. Запас — разница между ними.

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

Когда цифры не сходятся: проблемы и решения

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

Как освободить места от зависших сеансов

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

rac localhost:1545 session terminate --cluster=<uuid_кластера> --session=<uuid_сеанса>

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

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

Частые ошибки при подсчёте

  • ❌ Считать файлы .lic вместо мест. Один файл может давать и 1, и 50 мест.
  • ❌ Путать лицензию сервера с клиентскими. Лицензия сервера пользователей не добавляет.
  • ❌ Смотреть лицензии только в профиле администратора. Служба сервера их там не видит.
  • ❌ Делать вывод по одному снимку в обед. Пик обычно приходится на начало дня и закрытие месяца .

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

Учитывается ли лицензия сервера в количестве пользователей?
Нет. Лицензия сервера разрешает работу кластера 1С, а число одновременных пользователей задают только клиентские лицензии.
Занимает ли лицензию фоновое задание или регламентная обработка?
Нет. Фоновые и служебные сеансы сервера клиентскую лицензию не берут, поэтому в выводе rac session list --licenses их нет.
Можно ли смешивать ключи HASP и программные лицензии?
Можно. Места суммируются, а в выводе rac у каждой лицензии видно её тип: soft или HASP.
Что показывает поле max-users-cur?
Сколько мест этого комплекта осталось доступно на момент запроса. Если значение близко к нулю, пора искать зависшие сеансы или докупать комплект.
Как проверить лицензии удалённо без доступа к рабочему столу сервера?
Запустите ras на сервере и обращайтесь к нему через rac с другой машины: rac <адрес_сервера>:1545 session list --cluster=<uuid> --licenses. Порт 1545 должен быть открыт.