Куда 1С сохраняет программные лицензии и как найти их файлы

· 9 мин

Содержание

Файлы программных лицензий 1С хранятся в папке C:\ProgramData\1C\licenses в Windows и в /var/1C/licenses в Linux. Это общие каталоги для всех пользователей компьютера. Если при активации не хватило прав на запись в общий каталог, файл ложится в профиль пользователя: %APPDATA%\1C\licenses в Windows или ~/.1cv8/1C/licenses в Linux.

Где искать, зависит от вида защиты. Программная лицензия — это файл .lic, привязанный к железу компьютера. Аппаратная лицензия — USB-ключ HASP: в нём файла на диске нет, на диске лежит только настройка поиска ключа nethasp.ini. Сервер 1С ищет лицензии в тех же каталогах, но от имени учётной записи, под которой запущена служба.

Пути к лицензиям 1С в Windows

Платформа 8.3 при запуске просматривает два каталога. Сначала общий, затем пользовательский.

КаталогПолный путь (Windows 10/11, Server 2016+)Кто видит лицензию
ОбщийC:\ProgramData\1C\licensesВсе пользователи компьютера и служба сервера 1С
ПользовательскийC:\Users\<имя>\AppData\Roaming\1C\licensesТолько этот пользователь

Папки ProgramData и AppData по умолчанию скрыты. Проще всего открыть их через адресную строку Проводника или окно «Выполнить» (Win+R):

%ALLUSERSPROFILE%\1C\licenses
%APPDATA%\1C\licenses

Переменная %ALLUSERSPROFILE% раскрывается в C:\ProgramData, а %APPDATA% — в Roaming-папку текущего пользователя.

📄 Как выглядят файлы:

  • 🔢 имя состоит из цифр, например 20240312104517.lic. Платформа генерирует его сама при активации;
  • 📦 одна активация — один файл. На компьютере с основной и дополнительной лицензиями их будет несколько;
  • 📝 внутри текст с регистрационными данными и параметрами привязки к оборудованию.

Какой каталог выбрать при активации

Мастер получения лицензии сам решает, куда записать файл, исходя из прав пользователя. Чтобы лицензия легла в общий каталог, запускайте 1С для активации от имени администратора компьютера.

Когда какой вариант нужен:

  • ✅ общий каталог — офисный ПК с несколькими пользователями, терминальный сервер , сервер 1С;
  • 👤 пользовательский — ноутбук одного сотрудника без прав администратора, где лицензия нужна только ему.

Если файл уже оказался в профиле, а нужен всем, переместите его в C:\ProgramData\1C\licenses на том же компьютере. Повторная активация для этого не нужна.

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

Где лежат файлы лицензий 1С в Linux

В Linux логика та же, меняются только пути.

КаталогПутьДля кого
Общий/var/1C/licensesВсе пользователи и служба сервера
Пользовательский~/.1cv8/1C/licensesКонкретный пользователь

Для сервера 1С на Linux рабочий вариант — общий каталог. Служба работает от пользователя usr1cv8, и ей нужно право на чтение файлов. Проверить это можно так:

ls -l /var/1C/licenses/
sudo -u usr1cv8 cat /var/1C/licenses/*.lic > /dev/null && echo "читается"

Если каталога нет, а активация из клиента завершилась ошибкой записи, создайте его вручную и дайте права:

sudo mkdir -p /var/1C/licenses
sudo chown usr1cv8:grp1cv8 /var/1C/licenses
sudo chmod 755 /var/1C/licenses

💡 Если лицензию получали под своим пользователем без sudo, файл мог уйти в ~/.1cv8/1C/licenses вашего домашнего каталога. Служба сервера его не увидит. Перенос в /var/1C/licenses на том же сервере допустим: привязка идёт к оборудованию, а не к папке.

Лицензия на сервере 1С, сетевые ключи HASP и nethasp.ini

Программная лицензия сервера

Лицензия на сервер и клиентские лицензии, которые выдаёт кластер, хранятся на компьютере рабочего сервера. Путь — тот же общий каталог: C:\ProgramData\1C\licenses или /var/1C/licenses.

Главная ловушка Windows — учётная запись службы. Агент сервера часто работает от пользователя USR1CV8. Если лицензию активировали «для текущего пользователя» под администратором, она лежит в его AppData, и служба её не находит. Мастер получения лицензии, запущенный из клиент-серверной базы, предлагает сохранить лицензию на сервере 1С. Для серверной лицензии выбирайте этот вариант.

Аппаратные ключи HASP

У аппаратной защиты файла лицензии нет. Лицензия зашита в USB-ключ. На диске ищут только две вещи:

  • 🔌 драйвер ключа и, для сетевого ключа, менеджер лицензий HASP License Manager на компьютере, куда вставлен ключ;
  • ⚙️ файл nethasp.ini в каталоге conf установки платформы, например C:\Program Files\1cv8\conf\nethasp.ini.

nethasp.ini подсказывает клиенту, где искать сетевой ключ. Без него клиент ищет ключ широковещательным запросом, и в сегментированной сети это часто не срабатывает. Минимальная настройка:

[NH_COMMON]
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_USE_BROADCAST = Disabled

Вместо 192.168.1.10 укажите адрес компьютера с ключом и менеджером лицензий. Файл кладут на каждый клиентский компьютер и на сервер 1С, если ключ выдаёт лицензии кластеру.

Как найти файл лицензии 1С: команды, утилиты, реестр

Когда файлов несколько или неясно, какой из них используется, путь подскажут сами инструменты платформы.

Поиск по диску

Windows, командная строка от администратора:

dir /s /b "%ALLUSERSPROFILE%\1C\licenses\*.lic"
dir /s /b "C:\Users\*.lic" 2>nul

Windows, PowerShell — по всему диску C, займёт пару минут:

Get-ChildItem -Path C:\ -Filter *.lic -Recurse -ErrorAction SilentlyContinue |
  Where-Object { $_.FullName -match '1C' } | Select-Object FullName, LastWriteTime

Linux:

sudo find / -type f -name "*.lic" -path "*1C*" 2>/dev/null

Утилита ring

В платформе 8.3 есть утилита ring с модулем лицензий. Команда показывает пин-коды и имена файлов лицензий, найденных на компьютере:

ring license list

Подробности по конкретной лицензии выдаёт ring license info --name <имя из списка>. Остальные параметры смотрите в ring license help. Команду запускайте от той учётной записи, под которой работает 1С. Иначе пользовательский каталог будет чужим.

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

На сервере полезнее всего узнать, какой файл реально выдан пользователю. Для этого есть консоль кластера и rac:

rac cluster list
rac session list --cluster=<id кластера> --licenses

В выводе для каждого сеанса видны тип лицензии (программная или HASP) и полное имя файла .lic с путём. В консоли администрирования то же самое показывает список сеансов в режиме отображения лицензий.

На клиенте сведения о полученной лицензии есть в окне «О программе» (меню справки).

А что с реестром

Программные лицензии в реестре Windows не хранятся — только в файлах. Реестр пригодится в двух косвенных случаях:

  1. Узнать, от чьего имени работает служба сервера. Ключ HKLM\SYSTEM\CurrentControlSet\Services\<имя службы агента 1С>, параметр ObjectName. То же видно в оснастке services.msc на вкладке «Вход в систему».
  2. Найти профиль этой учётной записи. Ключ HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList, параметр ProfileImagePath у нужного SID. К пути добавьте \AppData\Roaming\1C\licenses.

Терминальный сервер, RDS и Citrix: где лицензии и кто их видит

На терминальном сервере все пользователи работают на одном компьютере. Поэтому лицензию ставят в общий каталог C:\ProgramData\1C\licenses — её видят все сеансы RDS и Citrix.

Что здесь отличается от обычного ПК:

  • 👥 нужна многопользовательская лицензия на нужное число сеансов. Однопользовательская клиентская лицензия в терминальном режиме даст работать одному пользователю;
  • 🖥 привязка идёт к оборудованию терминального сервера. Для виртуальной машины это параметры ВМ, поэтому её перенос на другой хост или смена сетевого адаптера может сбить лицензию;
  • 🧩 если пользователь активировал лицензию сам, файл ушёл в его профиль AppData\Roaming. При перемещаемых профилях или Citrix User Profile Management такой файл гуляет между серверами фермы и на чужом сервере не работает .

💡 Для фермы из нескольких терминальных серверов удобнее клиент-серверный вариант: клиентские лицензии выдаёт сервер 1С из своего общего каталога. Тогда лицензии не размазаны по профилям и узлам фермы.

Резервная копия лицензий 1С и восстановление

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

Что сохранить заранее:

  1. Скопировать содержимое C:\ProgramData\1C\licenses или /var/1C/licenses в надёжное место.
  2. Сохранить конверт или PDF с пин-кодами: основной код и резервные.
  3. Записать регистрационный номер комплекта и данные организации, которые вводили при активации. При повторной активации их сверяют.

Восстановление на том же компьютере:

  1. Закройте 1С у всех пользователей этого компьютера.
  2. Верните файлы .lic в общий каталог.
  3. Для сервера 1С перезапустите службу агента. Перезапуск обрывает сеансы всех пользователей — делайте это вне рабочего времени.
  4. Запустите 1С и проверьте окно «О программе».

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

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

Переезд на новый сервер

Порядок, при котором база не простаивает дольше, чем нужно:

  1. Заранее установите на новом сервере ту же платформу и службу сервера 1С.
  2. Активируйте лицензию на новом сервере резервным пин-кодом. Старый сервер пока продолжает работать.
  3. Проверьте ring license list на новом сервере: файл должен появиться в общем каталоге.
  4. Перенесите базы и переключите пользователей.
  5. Файлы лицензий на старом сервере удалите, когда он выводится из работы. Лицензия одна, работать на двух машинах одновременно по условиям комплекта она не должна.

Ошибки поиска лицензий 1С и как их устранить

Чаще всего 1С пишет Не обнаружена лицензия для использования программы. За одной фразой стоят разные причины.

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

Если не помогло

Запустите ring license list и ring license info для нужной лицензии. Утилита сообщает, проходит ли файл проверку на этом компьютере. Если файл на месте, читается, а проверка не проходит — дело в привязке, и выход один: повторная активация. Если пин-коды кончились, обращайтесь к партнёру, у которого покупали комплект, с регистрационным номером.

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

Можно ли хранить лицензию 1С на сетевом диске?
Нет. Платформа ищет файлы только в локальных каталогах licenses. Для общего доступа используют сервер 1С или многопользовательскую лицензию на терминальном сервере.
Сколько файлов .lic может лежать в одной папке?
Сколько угодно. Платформа просматривает все файлы каталога и берёт подходящий. Лишние или недействительные файлы запуску не мешают, но путают при диагностике.
Удалится ли лицензия при переустановке платформы 1С?
Нет. Каталог licenses не входит в папку установки, удаление или обновление платформы его не трогает. Пропадает лицензия при переустановке Windows или смене оборудования.
Почему у лицензии странное имя из цифр — можно его переименовать?
Имя генерирует платформа при активации. Переименовать файл можно, расширение .lic при этом должно остаться, но практической пользы в этом нет.
Как понять, какая лицензия у меня — программная или HASP?
Откройте окно «О программе»: там указан тип полученной лицензии. На сервере тип показывает rac session list --licenses.