Программные лицензии 1С на сервере: где посмотреть и чем проверить
Содержание
Быстрее всего лицензии кластера видны в консоли администрирования серверов 1С. Раскройте кластер и откройте узел Лицензии: там перечислены выданные сеансам лицензии, а рядом видно, кто и с какого компьютера их занимает. Это ответ на вопрос «сколько лицензий занято сейчас». Вопрос «что вообще куплено и активировано» решается другими способами, о них ниже.
Проверка нужна в трёх ситуациях: пользователь жалуется, что 1С не пускает в базу; вы переносите сервер или переустанавливаете систему; бухгалтерия спрашивает, хватит ли лицензий на новых сотрудников. Для каждого случая подходит свой инструмент.
Какие бывают лицензии и где они лежат на сервере
Сначала выясните, что именно вы проверяете. Под словом «лицензия» в 1С скрываются разные вещи.
| Что это | Где живёт | Что проверять |
|---|---|---|
| Программная лицензия сервера | файл .lic на диске сервера | наличие файла, привязка к машине, число сеансов |
| Аппаратный ключ (USB) | физически в порту сервера | виден ли ключ системе и драйвер |
| Клиентская лицензия на рабочее место | на компьютере пользователя или на сервере | кому выдана, не занята ли |
| Лицензия на конфигурацию (типовую) | регистрационный номер в базе | отдельная тема, к платформе отношения не имеет |
Программные лицензии платформы хранятся в каталоге лицензий. В Windows это C:\ProgramData\1C\licenses, в Linux — /var/1C/licenses. Каталог системный, в проводнике его не видно, пока не включён показ скрытых папок. Если вы что-то активировали, а файла здесь нет, активация прошла не на этой машине или под другой учётной записью.
Сервер 1С запускается от отдельного пользователя. Лицензию, полученную из-под администратора на рабочей станции, серверный процесс не увидит. Файл должен лежать там, где его читает именно служба ragent.
Посмотрите на дату изменения файлов в каталоге. Свежий файл после активации — признак того, что всё записалось. Пустой каталог при «купленных» лицензиях — повод начать с повторной активации.
Как проверить лицензии в консоли кластера
Консоль серверов 1С ставится вместе с сервером или отдельным компонентом. Если её нет, запустите установщик платформы в режиме изменения и добавьте компонент.
Шаги в консоли
- Запустите консоль и добавьте центральный сервер: имя машины и порт агента (по умолчанию
1540). - Раскройте
Центральные серверы, выберите нужный сервер, затем его кластер. - Откройте узел
Лицензии. Справа появится список выданных лицензий. - В колонках смотрите пользователя, компьютер, приложение (клиент, сервер, веб-расширение) и время выдачи.
- Для сравнения откройте
Сеансы: число сеансов и число занятых лицензий должны быть сопоставимы.
Если лицензия висит, а сеанса уже нет, это «зависший» процесс. Сначала посмотрите, какие сеансы держит этот рабочий процесс. Остановка рабочего процесса обрывает сеансы всех пользователей на нём, поэтому делайте это вне рабочего времени и после предупреждения пользователей. Если процесс не нужен, завершите его в консоли кластера (раздел Рабочие серверы → Рабочие процессы), и лицензия освободится.
Почему список бывает пустым
Он пуст, когда сейчас никто не подключён. Это нормально. Он пуст и тогда, когда у вашей учётной записи нет прав администратора кластера. В этом случае консоль покажет структуру, но детали скроет. Проверьте, подключались ли вы с правами администратора кластера, а не только агента.
Если на кластере включена авторизация администратора, консоль запросит логин и пароль. Не пытайтесь обойти запрос через пустую учётку: просто возьмите данные у того, кто настраивал кластер.
Как сверить результат с тем, что куплено
Консоль показывает занятое, а не купленное. Чтобы понять запас, возьмите документы на покупку: в них указано число рабочих мест и тип лицензии. Затем сделайте простой расчёт.
- Выпишите число одновременных подключений в самые загруженные часы, обычно это утро понедельника и конец месяца.
- Сравните с купленным числом. Пример: куплено 20 лицензий, в пик занято 18, запас равен 2 лицензиям, то есть 10%. Для роста штата это мало.
- Отдельно посмотрите фоновые задания и веб-подключения: они тоже могут занимать лицензии, и о них часто забывают.
Делайте замер несколько дней подряд, а не один раз. Разовый снимок в тихий час даст ложное спокойствие.
Проверка лицензий через Конфигуратор и клиент
Конфигуратор покажет не весь сервер, а то, что получил именно ваш сеанс. Для быстрой проверки «пустит ли меня 1С» этого достаточно.
- Откройте базу в Конфигураторе. Если лицензия не нашлась, платформа выдаст сообщение сразу при запуске, до открытия базы.
- Пункт
Справка → О программепоказывает версию платформы и сведения о защите: используется ли программная лицензия или аппаратный ключ. - В клиентском приложении то же окно открывается через меню справки.
Платформа без найденной лицензии не запускает базу, исключение — учебная версия. Никакого «демо-режима» с урезанными функциями у серверной платформы нет, поэтому сообщение об отсутствии лицензии нужно сразу брать в работу.
Учтите разницу между клиентской и серверной лицензией. Пользователь может подключиться к серверной базе, имея лицензию на клиент, а сервер при этом упирается в свой лимит. Проверять нужно оба конца цепочки.
Командная строка и утилиты: rac и ring
Консоль удобна, пока сидите перед ней. Для удалённой проверки и скриптов подходят утилиты командной строки.
rac — администрирование кластера
Утилита rac ставится вместе с серверным пакетом. Она работает через службу ras (по умолчанию порт 1545). Сначала запустите службу, затем узнайте идентификатор кластера:
rac cluster list
rac process list --cluster=<идентификатор_кластера> --licenses
rac session list --cluster=<идентификатор_кластера> --licenses
Первая команда выводит кластеры, вторая — рабочие процессы с привязанными к ним лицензиями, третья — сеансы с привязкой к лицензиям. Точный набор параметров проверьте справкой rac help для вашей версии платформы. Идентификатор кластера длинный, в виде GUID, копируйте его из вывода первой команды.
Если на кластере включена авторизация, добавьте параметры --cluster-user и --cluster-pwd.
ring — управление лицензиями из консоли
В составе современных платформ есть утилита ring с набором команд для работы с лицензиями. С её помощью можно получить список активированных программных лицензий и проверить их состояние. Точный синтаксис зависит от версии пакета, поэтому сверьтесь с подсказкой:
ring license help
ring license list
Команда help покажет, какие операции поддерживает ваша сборка. Не копируйте параметры из чужих инструкций вслепую: у разных релизов они отличаются.
Что выбрать
| Задача | Инструмент |
|---|---|
| Посмотреть, кто занял лицензии прямо сейчас | консоль кластера |
| Выгрузить данные в скрипт | rac |
| Проверить, какие лицензии активированы на машине | ring license list |
| Узнать, получил ли лицензию конкретный пользователь | Конфигуратор, О программе |
Диагностика ошибок лицензирования
Большинство обращений сводится к нескольким типовым сообщениям. Самое частое: Не обнаружено свободной лицензии.
Общий порядок поиска причины простой. Сначала выясните, пропала лицензия или упёрлись в лимит: это разные проблемы. Потом проверьте, что служба сервера работает от нужного пользователя. И только после этого лезьте в реинсталляцию.
Перед переустановкой платформы или переносом сервера сделайте копию каталога лицензий и запишите регистрационные данные. Повторная активация возможна не бесконечно, число попыток ограничено условиями получения лицензии.
Перед активацией новой лицензии на сервере пройдите короткую подготовку. Она занимает десять минут и убирает половину проблем.
- Убедитесь, что служба сервера запущена и под какой учётной записью она работает.
- Проверьте, что у этой записи есть права на каталог лицензий: чтение и запись.
- Сохраните регистрационные данные и пин-коды в надёжном месте, не в письме и не в чате.
- Закройте активные сеансы, чтобы никого не выбросило в момент смены лицензии.
- После активации перезапустите проверку в консоли и убедитесь, что новая лицензия видна.
Для виртуальных серверов добавьте ещё один шаг: узнайте у провайдера, не переносит ли он машины между хостами автоматически. Если переносит, привязка программной лицензии может сработать некстати, и тогда выбирайте аппаратный ключ с пробросом либо согласуйте с поставщиком схему лицензирования.
Лицензии при нескольких серверах в кластере
Кластер может состоять из нескольких рабочих серверов. Лицензии при этом принадлежат кластеру, а не отдельной машине, но программные лицензии активируются на конкретных серверах. Из этого следует практическое правило: проверяйте каждый рабочий сервер отдельно.
- В консоли откройте
Рабочие серверыи убедитесь, что все они подключены и числятся активными. - На каждой машине проверьте каталог лицензий. Если на одной из них файлов нет, а процессы на ней запускаются, часть пользователей будет получать отказ случайным образом.
- Сравните число сеансов на каждом сервере. Крен в одну сторону говорит о том, что балансировка отправляет всех на один узел.
Типичная картина: на новый сервер добавили в кластер, а лицензию на нём не активировали. Пользователи, попавшие на этот узел, получают ошибку, остальные работают. Жалобы кажутся «плавающими», пока вы не посмотрите на сервер глазами каждого сеанса.
Автоматическая проверка лицензий: скрипт и мониторинг
Ручная проверка хороша для разовых задач. Если лицензий впритык, нужен контроль, который заранее предупредит о заполнении.
Минимальная схема из трёх частей:
- Скрипт по расписанию вызывает
rac session list --licensesи считает занятые лицензии. - Результат сравнивается с порогом, например с 90% от купленного числа.
- При превышении порога уходит уведомление администратору.
Пример для планировщика заданий Windows. Сохраните вывод в файл и анализируйте его любым удобным способом:
@echo off
set CLUSTER=<идентификатор_кластера>
rac session list --cluster=%CLUSTER% --licenses > C:\monitor\licenses.txt
find /c "license" C:\monitor\licenses.txt
Пример условный: названия полей в выводе зависят от версии платформы, поэтому разовый запуск вручную нужен, чтобы подобрать строку для подсчёта. Сначала посмотрите вывод, потом пишите фильтр.
Если мониторинг уже есть (Zabbix, Prometheus и подобные), добавьте проверку числа лицензий туда же. Отдельная система ради одного показателя не нужна.
Частые ошибки при проверке
- 🔎 Смотрят только узел
Сеансыи считают, что лицензия идёт «в нагрузку» к каждому. На деле один пользователь может занимать лицензию в нескольких сеансах разных приложений, и картина в двух узлах не совпадёт. - 🔎 Путают программную лицензию с лицензией на конфигурацию. Регистрационный номер типового решения платформа не проверяет.
- 🔎 Проверяют каталог лицензий от имени администратора, а не от имени службы. Файл есть, но служба его не читает.
- 🔎 Считают версии платформы «старше/младше» на глаз. Сравнивайте по номеру: например, номер не ниже нужного релиза.
Частые вопросы
Где хранятся программные лицензии 1С на сервере?
C:\ProgramData\1C\licenses в Windows и /var/1C/licenses в Linux. Каталог скрытый, включите показ скрытых папок.Как узнать, сколько лицензий занято сейчас?
Лицензии в консоли кластера или выполните rac session list --licenses. Оба способа показывают выданные лицензии.