Как найти, где хранится лицензия 1С на компьютере, сервере и в Linux
Содержание
Программные лицензии 1С 8.3 в Windows лежат в папке C:\ProgramData\1C\licenses — это файлы с расширением .lic. Если лицензию активировали «только для текущего пользователя», ищите её в профиле: %APPDATA%\1C\licenses. Аппаратная лицензия (ключ HASP) на диске не хранится вовсе: она записана в самом USB-ключе, а на компьютере есть только драйвер и файл настройки nethasp.ini.
Типичная ситуация: администратор переносит базу на новый сервер, а через день бухгалтер видит окно Не обнаружена лицензия!. Чтобы понять, что сломалось, нужно знать, где лежат лицензии 1С каждого типа, какой процесс их читает и где искать следы в реестре и журналах.
Где лежат файлы программных лицензий 1С в Windows
Программная лицензия — это файл, который платформа получает при активации пин-кодом. Внутри зашифрованы регистрационный номер комплекта , число рабочих мест и параметры компьютера, к которому она привязана. Открывать его блокнотом бесполезно.
Платформа 1С:Предприятие 8.3 ищет файлы .lic в двух каталогах:
| Каталог | Полный путь (Windows 10/11, Server 2016+) | Кому доступна лицензия |
|---|---|---|
%ALLUSERSPROFILE%\1C\licenses | C:\ProgramData\1C\licenses | всем пользователям компьютера |
%APPDATA%\1C\licenses | C:\Users\<имя>\AppData\Roaming\1C\licenses | только этому пользователю Windows |
Какую папку выбрать, программа спрашивает в мастере получения лицензии. По умолчанию предлагается вариант для всех пользователей — его и рекомендуют оставлять, особенно на терминальном сервере.
Как быстро открыть папку
Обе папки скрытые, поэтому в Проводнике их не видно без настройки. Проще всего:
- Нажмите
Win + R. - Введите
%ProgramData%\1C\licensesи нажмите Enter. - Если папка пустая или её нет — повторите с
%APPDATA%\1C\licenses.
Имя файла лицензии — длинная последовательность цифр, например 20231115104512.lic. По имени нельзя понять, какой продукт активирован: это видно только средствами платформы (см. раздел про диагностику).
Что лежит рядом и чего пугаться не нужно
- 📄 Несколько файлов
.licв одной папке — нормально: основная поставка и дополнительные клиентские лицензии на 5, 10, 20 мест активируются отдельно и дают отдельные файлы. - 📄 Файлы с тем же именем, но другим расширением, лучше не трогать: их создаёт платформа.
- 📁 Папка
C:\ProgramData\1C\1cv8— это кэш и служебные настройки платформы, а не лицензии.
Скопированный на другой компьютер .lic не заработает: лицензия привязана к параметрам оборудования. Для переноса нужна повторная активация резервным пин-кодом из конверта комплекта.
Что искать в реестре Windows, если лицензии 1С не находятся
Сам файл лицензии в реестре не хранится — ни ключ, ни пин-код, ни число мест там не записаны. Поиск по слову «licenses» в regedit обычно ничего полезного не даёт. Зато реестр отвечает на вопрос, от чьего имени работает сервер 1С, а значит, в каком профиле он ищет лицензии.
Где смотреть:
- Откройте
regeditот имени администратора. - Перейдите в
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services. - Найдите раздел службы, имя которого начинается с
1C:Enterprise 8.3 Server Agent. - В параметре
ImagePath— полная строка запускаragent.exe, в параметреObjectName— учётная запись службы.
Строка ImagePath выглядит примерно так:
"C:\Program Files\1cv8\8.3.24.1548\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug
Из неё видно версию платформы, порты и каталог кластера (-d). Из ObjectName — пользователя. Если служба работает под USR1CV8, то лицензии, активированные «для текущего пользователя», ей нужно искать в C:\Users\USR1CV8\AppData\Roaming\1C\licenses, а не в профиле администратора, который их получал.
Ту же информацию без реестра дают консоль services.msc (вкладки «Общие» и «Вход в систему») или команда sc qc "имя службы" в командной строке.
Ещё одна служба, которую стоит проверить в том же разделе, — менеджер лицензий HASP (hasplms). Если её нет или она остановлена, аппаратный ключ не будет виден ни локально, ни по сети.
Аппаратный ключ HASP: где лицензия и где её настройки
У аппаратной защиты логика обратная: лицензия «лежит» в USB-ключе. Вынули ключ — лицензии нет. На диске хранятся только:
- 🔌 драйвер Sentinel HASP (служба
hasplms); - 🌐 веб-консоль драйвера по адресу
http://localhost:1947— в ней видны все ключи, подключённые к этому компьютеру и найденные в сети; - ⚙️ файл
nethasp.ini— подсказка платформе, где искать сетевой ключ.
Где лежит nethasp.ini
Файл кладут в каталог conf внутри папки конкретной версии платформы:
C:\Program Files\1cv8\8.3.24.1548\bin\conf\nethasp.ini
При обновлении платформы появляется новая папка версии, и nethasp.ini в ней — заводской, без ваших настроек. Отсюда частая жалоба «после обновления 1С не видит сетевой ключ».
Минимальная рабочая настройка для ключа, вставленного в компьютер с адресом 192.168.0.10:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.0.10
NH_USE_BROADCAST = Disabled
Отключение широковещательного поиска (NH_USE_BROADCAST = Disabled) ускоряет запуск: клиент сразу обращается к указанному адресу, а не опрашивает всю сеть.
Какой ключ где должен стоять
| Ключ | Где вставлен | Что нужно на клиенте |
|---|---|---|
| Локальный однопользовательский | в тот же компьютер, где запускают 1С | только драйвер HASP |
| Сетевой многопользовательский | в любой компьютер сети, там же драйвер и менеджер лицензий | nethasp.ini с адресом этого компьютера |
| Ключ сервера 1С:Предприятия | в компьютер с рабочим сервером 1С | ничего — его читает сервер |
Перед тем как перезапускать службу hasplms или вынимать сетевой ключ, предупредите пользователей: работающие сеансы 1С потеряют лицензию и закроются. Делайте это вне рабочего времени.
Лицензии сервера 1С:Предприятия и выдача клиентских лицензий сервером
У клиент-серверной базы два вида лицензий, и лежат они на разных машинах.
Лицензия на сервер (на рабочий сервер 1С:Предприятия) всегда нужна там, где работает служба ragent. Программная лицензия сервера хранится в тех же каталогах, что и на рабочей станции, только на самом сервере: C:\ProgramData\1C\licenses или профиль учётной записи службы.
Клиентские лицензии можно хранить двумя способами:
- 💻 на каждом компьютере пользователя — тогда каждый клиент берёт лицензию из своей локальной папки или ключа;
- 🖥 на сервере 1С — тогда клиентские
.licили сетевой ключ находятся на сервере, а клиенты получают лицензию через кластер.
Как включить выдачу лицензий сервером
- Активируйте клиентские лицензии на компьютере с сервером 1С (запустив мастер на самом сервере).
- Откройте консоль администрирования серверов 1С, найдите информационную базу и откройте её свойства.
- Включите параметр «Выдача лицензий сервером 1С:Предприятия».
- Проверьте у рабочего сервера требования назначения функциональности: сервис лицензий должен работать хотя бы на одном рабочем сервере кластера.
После этого клиенту не нужен ни файл, ни ключ: при входе в базу он получает лицензию от сервера. Удобно для удалённых пользователей и VPN — не нужно таскать ключи и активировать каждый ноутбук.
Клиентская лицензия, полученная от сервера, работает только для баз этого кластера. Файловые базы на том же ноутбуке по-прежнему ищут лицензию локально.
А что за «хранилище»
Хранилищем конфигурации называют механизм групповой разработки — к лицензиям он отношения не имеет и отдельной лицензии не требует. Если в поиске вы встретили «хранилище лицензий», скорее всего, речь о папке licenses или о сервисе лицензий кластера, описанных выше.
Где хранятся лицензии 1С в Linux и на терминальном сервере
Linux
В Linux программные лицензии лежат в каталоге /var/1C/licenses — он общий для всех пользователей. Активированная «для себя» лицензия оказывается в домашнем каталоге пользователя, в скрытой папке .1cv8.
Проверьте права: учётная запись, под которой работает клиент или сервер 1С (для сервера обычно usr1cv8), должна иметь право читать файлы в /var/1C/licenses.
ls -la /var/1C/licenses
sudo chown -R usr1cv8:grp1cv8 /var/1C/licenses
Вторую команду выполняйте только если в выводе первой файлы принадлежат root и сервер 1С их не видит. Владелец и группа должны совпадать с теми, под которыми запущен сервер в вашей системе.
Аппаратные ключи HASP в Linux тоже работают: нужен пакет драйвера Sentinel (служба aksusbd), веб-консоль та же — порт 1947.
Терминальный сервер (RDS)
На терминальном сервере каждый пользователь работает в своём профиле. Поэтому лицензию 1С активируют «для всех пользователей» — в C:\ProgramData\1C\licenses. Если активировать её из-под администратора с вариантом «для текущего пользователя», остальные увидят окно об отсутствии лицензии.
Что проверить на RDS:
- 👥 Файлы
.licлежат вProgramData, а не вAppDataадминистратора. - 🔢 Количества мест в комплекте хватает на всех одновременных пользователей: каждый открытый сеанс 1С занимает место.
- 🔁 Сеансы, которые пользователи «бросили» без выхода, продолжают держать лицензию, пока сеанс Windows не завершён. Настройте в RDS автоматическое завершение отключённых сеансов.
Как проверить, какую лицензию взяла 1С и откуда
Знать, где лежат файлы, полдела. Нужно ещё увидеть, какую лицензию программа реально использует.
В самой программе
Откройте Справка → О программе. В окне есть строка о лицензии: по ней видно, получена она из программного файла, из локального или сетевого ключа HASP или от сервера 1С.
В консоли сервера
В консоли администрирования серверов 1С откройте список сеансов информационной базы. У каждого сеанса есть сведения о лицензии: тип, путь к файлу или адрес ключа. Те же данные дают из командной строки через сервер администрирования ras:
rac cluster list
rac session list --cluster=<id кластера> --licenses
Утилита ring
В составе платформы есть утилита ring с модулем для работы с лицензиями. Команда ring license list показывает активированные на компьютере программные лицензии. Набор параметров для просмотра подробностей и проверки смотрите во встроенной справке: ring license help.
Технологический журнал
Когда лицензия то находится, то нет, включите запись событий лицензирования в технологический журнал. Файл logcfg.xml кладут в каталог C:\Program Files\1cv8\conf:
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="C:\techlog" history="24">
<event>
<eq property="name" value="LIC"/>
</event>
<property name="all"/>
</log>
</config>
В логах появятся события LIC: какую папку проверяла платформа, какой файл прочитала и почему он не подошёл. Журнал быстро растёт — после диагностики удалите logcfg.xml.
Что нельзя делать с файлами лицензий 1С
- ❌ Удалять «лишние»
.lic. Активированная лицензия после удаления сама не вернётся: потребуется повторная активация, а число резервных пин-кодов в комплекте ограничено. Перед любой чисткой папкиlicensesскопируйте её целиком. - ❌ Менять оборудование сервера «на горячую». Замена материнской платы, сетевой карты или переезд виртуальной машины на другой хост может сделать программную лицензию недействительной. Планируйте такие работы заранее и держите под рукой резервные пин-коды.
- ❌ Активировать лицензию под учётной записью, которую потом удалят. Лицензия «для текущего пользователя» исчезнет вместе с профилем.
- ❌ Ставить на один компьютер ключ HASP и сразу программную лицензию того же комплекта «на всякий случай». Это разные поставки; лишние места не появятся, а диагностика усложнится.