Сколько лицензий 1С занято прямо сейчас и кто их держит
Содержание
В клиент-серверной 1С 8.3 точное число занятых лицензий показывает консоль администрирования кластера или команда rac session list --licenses: у каждого сеанса видно, какую лицензию он получил и откуда. В файловом варианте единого счётчика нет: смотрите список активных пользователей, монитор сетевого ключа HASP и файлы программных лицензий на рабочих местах.
Частое заблуждение — считать лицензии по окну «Активные пользователи». Это число сеансов, а не лицензий. Фоновые задания лицензию не берут, а несколько сеансов с одного компьютера обычно занимают одну лицензию. Поэтому «12 пользователей в базе» и «12 занятых лицензий» — не одно и то же.
Что считается занятой лицензией в 1С 8.3
Перед проверкой разделите два вида лицензий. Их часто путают, и отсюда ложные выводы.
- 🖥️ Клиентские лицензии — это места пользователей. Их и считают, когда спрашивают «сколько лицензий занято». Бывают на 1, 5, 10, 20, 50, 100 и более мест.
- 🗄️ Лицензия на сервер 1С:Предприятия — нужна для работы самого кластера. Пользователей она не ограничивает и в подсчёт мест не входит.
По носителю клиентские лицензии делятся так:
| Носитель | Где хранится | Где смотреть занятость |
|---|---|---|
| Программная (пин-код) | Файл .lic на компьютере или сервере | Консоль кластера, rac, каталог лицензий |
| Локальный ключ HASP | USB-ключ в рабочем месте | Только на этом компьютере |
| Сетевой ключ HASP | USB-ключ на сервере с HASP License Manager | Aladdin Monitor, консоль кластера |
| Серверный ключ клиентских лицензий | USB-ключ в сервере 1С | Консоль кластера, rac |
Общий объём купленных мест — сумма всех пакетов. Если активированы два комплекта по 5 мест и один на 10, у вас 20 клиентских лицензий. Свободных — 20 минус занятые.
Самый быстрый способ узнать, какую лицензию получил конкретный пользователь: откройте у него в 1С окно «О программе» и нажмите «Информация для технической поддержки». В тексте есть строка о полученной лицензии: программная или ключ, получена клиентом или сервером.
Как посмотреть занятые лицензии в файловой базе
В файловом варианте каждый клиент получает лицензию сам: из локального файла, из локального ключа или по сети от HASP License Manager. Центрального учёта нет, поэтому картину собирают из трёх источников.
Шаг 1. Посчитайте сеансы
Откройте базу и выполните Функции для технического специалиста → Стандартные → Активные пользователи. Если пункта «Функции для технического специалиста» нет в главном меню, включите его: Главное меню → Сервис → Параметры, флажок «Отображать команду Функции для технического специалиста».
В Конфигураторе тот же список открывается через Администрирование → Активные пользователи.
В списке смотрите на колонки «Компьютер» и «Приложение»:
- Уберите из подсчёта строки с приложением «Фоновое задание».
- Сгруппируйте оставшиеся строки по имени компьютера.
- Число разных компьютеров — оценка числа занятых лицензий при сетевом ключе HASP.
Шаг 2. Проверьте, откуда берут лицензию рабочие места
У каждого компьютера посмотрите строку о лицензии в окне «О программе». Если там программная лицензия — проверьте каталог C:\ProgramData\1C\licenses. Каждый файл .lic — отдельная активированная лицензия.
Если там ключ — выясните, локальный он или сетевой. Локальный обслуживает только своё рабочее место. Сетевой раздаёт места всем, кто до него достучался.
Шаг 3. Сверьте с паспортом комплекта
Сложите места по всем .lic и ключам. Сравните с числом компьютеров из шага 1. Разница и есть запас.
Не копируйте файл .lic с одного компьютера на другой, чтобы «добавить место». Программная лицензия привязана к параметрам оборудования. На чужом компьютере она не заработает, а исходная может слететь при следующей проверке.
Количество лицензий на сервере 1С: консоль и rac
В клиент-серверном варианте лицензии раздаёт кластер, и здесь подсчёт точный.
Через консоль администрирования
- Запустите «Администрирование серверов 1С Предприятия».
- Раскройте
Центральные серверы 1С:Предприятия → <сервер> → Кластеры → <кластер>. - Откройте узел «Сеансы». В правой части видно всех подключённых пользователей, компьютер и тип приложения.
- Откройте узел «Рабочие процессы», раскройте процесс и выберите подузел «Лицензии». Там перечислены лицензии, выданные этим процессом: тип, файл или ключ, максимум мест.
Если рабочих процессов несколько, сложите лицензии по всем.
Через утилиту rac
Утилита rac работает через сервер администрирования ras, по умолчанию на порту 1545. Служба ras должна быть запущена.
# узнать идентификатор кластера
rac cluster list
# сеансы с информацией о полученных лицензиях
rac session list --cluster=<uuid-кластера> --licenses
Если на кластере заданы администраторы, добавьте --cluster-user=<имя> --cluster-pwd=<пароль>.
В выводе ищите у каждой записи поля:
- 🔑
license-type— программная лицензия или ключ; - 🔌
issued-by-server—yes, если лицензию выдал сервер,no, если клиент принёс свою; - 📦
max-users— сколько мест в лицензии, из которой выдана эта.
Поле issued-by-server часто объясняет загадку «на сервере 10 мест, а работают 13». Трое берут лицензию с локальных ключей или своих файлов. Если выдача лицензий сервером отключена в свойствах информационной базы, все клиенты будут искать лицензию сами.
Список установленных на сервере программных лицензий показывает утилита ring:
ring license list
Параметры остальных подкоманд смотрите в ring license help. Под Linux файлы лицензий лежат в /var/1C/licenses.
Как проверить сетевой ключ HASP и сколько мест на нём занято
Сетевой ключ сам считает подключения. Узнать занятость можно двумя способами.
Aladdin Monitor
Установите Aladdin Monitor на любой компьютер в сети. Он находит HASP License Manager и показывает ключи. Для каждого ключа видны максимум мест и текущее число подключений, а также адреса подключившихся компьютеров.
Если монитор не находит менеджер, проверьте:
- Служба HASP License Manager запущена на сервере с ключом.
- Порт 475 открыт в брандмауэре сервера.
- На клиенте в файле
C:\Program Files\1cv8\conf\nethasp.iniпрописан адрес сервера.
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled
Явный адрес сервера и отключённый широковещательный поиск ускоряют получение лицензии и убирают случайные «не найден ключ» в больших сетях.
Sentinel Admin Control Center
На компьютере, где вставлен ключ, откройте в браузере http://localhost:1947. В разделе ключей видно, определяется ли ключ драйвером. Это первая проверка, если 1С вдруг перестала видеть лицензию.
Маркировка на корпусе сетевого ключа содержит число мест, например NET5 или NET20. Это быстрый способ сверить, сколько пользователей ключ должен держать.
Программные лицензии: где лежат файлы и как свериться с пин-кодами
Программная лицензия появляется после активации пин-кода. Один пин-код — одна активация на одном компьютере. В комплект на 5 мест входит один набор пин-кодов, и после активации появляется один файл .lic на 5 мест.
Где искать файлы:
| ОС | Каталог |
|---|---|
| Windows | C:\ProgramData\1C\licenses |
| Linux | /var/1C/licenses |
Как сверить, что активировано:
- Откройте каталог и посчитайте файлы
.lic. - Сопоставьте их с пин-конвертами комплекта по регистрационному номеру.
- Отметьте, на каком компьютере активирован каждый пин-код. Это пригодится при переносе: резервные пин-коды конверта не бесконечны.
Пин-коды, которые остались неиспользованными, — ваш резерв на случай замены оборудования. Храните конверт вместе с журналом активаций.
Не удаляйте файлы .lic «для проверки», не убедившись, что у вас есть неиспользованный пин-код для повторной активации. Иначе место пропадёт до обращения в поддержку.
Журнал регистрации: кто и когда занимал лицензии
Текущий снимок не отвечает на вопрос «хватает ли нам мест в пиковые часы». Для этого нужна история, и её даёт журнал регистрации.
Откройте Функции для технического специалиста → Стандартные → Журнал регистрации. Затем:
- Нажмите «Установить отбор».
- В событиях оставьте «Сеанс. Начало» и «Сеанс. Завершение».
- Задайте период, например последнюю рабочую неделю.
- Отсортируйте по дате и посмотрите, в какие часы открытых сеансов было больше всего.
Удобно выгрузить список в табличный документ и посчитать по часам: плюс один на начало сеанса, минус один на завершение. Максимум за день — ваш пик.
Журнал хранит сеансы, а не лицензии. Пик сеансов показывает верхнюю границу нагрузки. Если пользователи открывают по два-три окна 1С с одного компьютера, реальная потребность в лицензиях ниже.
Если в журнале много коротких сеансов с одного компьютера подряд, это признак того, что пользователю не хватает лицензии и он пробует снова. Такая картина особенно характерна для ошибки Не обнаружен ключ защиты программы или полученная программная лицензия.
Автоматический учёт использованных лицензий: скрипты и обработка
Ручная проверка раз в месяц ничего не скажет о пиках. Проще поставить сбор данных по расписанию.
Скрипт для Linux-сервера
#!/bin/bash
# Пишет в журнал число лицензий, выданных сеансам кластера
CLUSTER=$(rac cluster list | awk '/^cluster/{print $3; exit}')
COUNT=$(rac session list --cluster="$CLUSTER" --licenses | grep -c '^session')
echo "$(date '+%Y-%m-%d %H:%M') $COUNT" >> /var/log/1c-licenses.log
Добавьте в cron запуск каждые 15 минут в рабочее время. Через неделю в журнале будет видна кривая занятости.
Скрипт для Windows-сервера
$rac = "C:\Program Files\1cv8\8.3.24.1342\bin\rac.exe" # подставьте свою версию
$cl = (& $rac cluster list | Select-String '^cluster').ToString().Split(':')[1].Trim()
$n = (& $rac session list --cluster=$cl --licenses | Select-String '^session').Count
"$(Get-Date -Format 'yyyy-MM-dd HH:mm') $n" | Out-File -Append C:\Logs\1c-licenses.log
Запускайте его через Планировщик заданий. Каталог C:\Logs создайте заранее.
Подсчёт из самой базы
Внутри конфигурации число сеансов, кроме фоновых, можно получить кодом. Выполнять нужно с правами администратора, например во внешней обработке:
Сеансы = ПолучитьСеансыИнформационнойБазы();
Счетчик = 0;
Для Каждого Сеанс Из Сеансы Цикл
Если Сеанс.ИмяПриложения <> "BackgroundJob" Тогда
Счетчик = Счетчик + 1;
КонецЕсли;
КонецЦикла;
Сообщить("Сеансов без фоновых заданий: " + Формат(Счетчик, "ЧГ=0"));
Код считает сеансы одной базы. Если на кластере несколько баз, а лицензии общие, точную цифру даст только rac или консоль.
Частые ошибки при подсчёте лицензий 1С
- ❌ Считать сеансы вместо лицензий. Два окна 1С на одном компьютере — два сеанса, но обычно одна лицензия.
- ❌ Включать в подсчёт фоновые задания. Они работают на сервере и места пользователей не занимают.
- ❌ Смотреть только серверные лицензии. Клиенты с локальными ключами или своими файлами
.licработают мимо сервера. Их видно поissued-by-server: no. - ❌ Путать лицензию на сервер с клиентскими. Серверная лицензия мест не добавляет.
- ❌ Проверять одну базу при общем пуле. Лицензии выдаются на кластер, а не на базу. Пользователь бухгалтерии и пользователь ЗУП на одном сервере тратят места из одного пула.
Занимает ли лицензию Конфигуратор?
Почему лицензий занято больше, чем людей в офисе?
Можно ли объединить два ключа HASP в один пул?
Сколько лицензий нужно, если сотрудники работают через удалённый рабочий стол?
Где узнать, сколько лицензий куплено, если документы потеряны?
.lic и маркировке ключей, а регистрационные номера комплектов уточните у партнёра, который продавал программу.