Куда 1С 8.3 сохраняет программные лицензии и как их найти
Содержание
Файлы программных лицензий 1С 8.3 лежат в папке C:\ProgramData\1C\licenses (для всех пользователей компьютера) или в C:\Users\<имя>\AppData\Roaming\1C\licenses (для одного пользователя). В Linux это /var/1C/licenses и ~/.1cv8/1C/licenses. Сам файл имеет расширение .lic, а имя — длинный набор цифр.
Частое заблуждение: «лицензия лежит в папке с программой, рядом с 1cv8.exe». Нет. В каталоге Program Files\1cv8 программных лицензий не бывает. Там может быть только nethasp.ini — настройка поиска сетевого USB-ключа. А у самого USB-ключа файлов лицензий нет вовсе: защита зашита в устройство.
Как устроена защита 1С и где у каждого типа лицензии «хранилище»
Платформа 1С:Предприятие 8.3 при запуске ищет лицензию в определённом порядке. Где именно её искать — зависит от типа защиты.
| Тип защиты | Где хранится | Привязка |
|---|---|---|
| 🔑 Программная лицензия (пин-код) | Файл .lic в папке licenses | К оборудованию и ОС компьютера |
| 🔌 Локальный USB-ключ HASP | В самом ключе | К ключу, вставленному в этот ПК |
| 🌐 Сетевой USB-ключ HASP | В ключе на компьютере с менеджером лицензий | К ключу; клиент ищет его по сети |
| 🖥️ Лицензия сервера 1С | Файл .lic на компьютере рабочего сервера | К оборудованию сервера |
Программная лицензия — это текстовый файл. Внутри него регистрационные данные владельца, номер комплекта и зашифрованный «слепок» компьютера. Поэтому файл, скопированный на другой ПК, там не заработает.
Лицензии бывают клиентские (на 1, 5, 10, 20, 50, 100 и больше рабочих мест) и серверные (для кластера 1С). Клиентская лицензия на несколько мест активируется на одном компьютере. Обычно это терминальный сервер или сервер 1С, который раздаёт лицензии клиентам.
Если на компьютере одновременно есть и .lic, и USB-ключ, платформа использует то, что найдёт. Держите один способ защиты на одном месте, иначе сложно понять, что именно «съело» лицензию.
Папки лицензий 1С на компьютере пользователя (Windows)
Активатор лицензии при получении спрашивает, для кого её сохранить. От ответа зависит папка.
Для всех пользователей компьютера
C:\ProgramData\1C\licenses
Короткий путь через переменную окружения: %ProgramData%\1C\licenses или %AllUsersProfile%\1C\licenses. Это рекомендуемое место. Лицензию видят все учётные записи Windows, в том числе служебные.
Для текущего пользователя Windows
C:\Users\<ИмяПользователя>\AppData\Roaming\1C\licenses
Через переменную: %AppData%\1C\licenses. Такую лицензию видит только тот пользователь, под которым её активировали. Зашёл другой сотрудник под своей учётной записью — для него лицензии нет.
Как открыть скрытую папку
Обе папки — ProgramData и AppData — скрытые. Проводник их по умолчанию не показывает. Быстрее всего так:
- Нажмите
Win + R. - Введите
%ProgramData%\1C\licensesи нажмите Enter. - Если папки нет — повторите с
%AppData%\1C\licenses.
Если открылась пустая папка или Windows пишет, что путь не найден, программной лицензии на этом компьютере нет. Значит, работает USB-ключ или лицензия с сервера.
Проверить обе папки разом из командной строки:
dir "%ProgramData%\1C\licenses\*.lic"
dir "%AppData%\1C\licenses\*.lic"
Если файл мог оказаться в профиле другого сотрудника, найдите все лицензии на диске одной командой. Поиск идёт по всему диску C:, поэтому займёт несколько минут; запускайте командную строку от имени администратора:
dir C:\*.lic /s /b
В выдаче будут полные пути. Попадутся и чужие .lic от других программ — смотрите только те, что лежат в папках 1C\licenses.
Где лежит лицензия сервера 1С на Windows Server
Сервер 1С работает как служба, обычно под учётной записью USR1CV8. Рабочий процесс rphost ищет лицензию в тех же папках, но от имени пользователя службы. Отсюда главное правило.
Лицензию сервера и клиентские лицензии для раздачи сервером кладите в C:\ProgramData\1C\licenses.
Варианты, которые встречаются на практике:
| Папка | Когда там окажется лицензия |
|---|---|
C:\ProgramData\1C\licenses | Активировали «для всех пользователей» — правильный вариант |
C:\Users\USR1CV8\AppData\Roaming\1C\licenses | Активатор запускали от имени пользователя службы |
C:\Users\Administrator\AppData\Roaming\1C\licenses | Активировали «для текущего пользователя» под администратором — служба файл не видит |
C:\Windows\System32\config\systemprofile\AppData\Roaming\1C\licenses | Служба 1С запущена под Local System |
Третья строка — самая частая причина ситуации «лицензию получили, а сервер её не видит». Файл есть, но лежит в профиле администратора. Служба под USR1CV8 туда не заглядывает.
Учётной записи службы нужны права на чтение папки licenses. Если папку создавали вручную и права урезаны, сервер будет вести себя так, будто лицензии нет.
Как сервер раздаёт клиентские лицензии
В клиент-серверном варианте клиенты могут брать лицензию не у себя, а у сервера. Для этого:
- 📌 клиентская лицензия на нужное число мест лежит в
C:\ProgramData\1C\licensesна компьютере рабочего сервера; - 📌 в консоли кластера в свойствах информационной базы включена «Выдача лицензий сервером 1С:Предприятия».
Тогда на рабочих местах файлов .lic не нужно вовсе. Это удобно: лицензии в одном месте, их проще учитывать и сохранять.
Расположение лицензий 1С в Linux
В Linux логика та же: общая папка и папка пользователя.
| Назначение | Путь |
|---|---|
| Для всех пользователей | /var/1C/licenses |
| Для текущего пользователя | ~/.1cv8/1C/licenses |
Для сервера под usr1cv8 (если ставили в профиль) | /home/usr1cv8/.1cv8/1C/licenses |
Для сервера 1С надёжнее /var/1C/licenses. Проверить содержимое и права:
ls -la /var/1C/licenses
ls -la ~/.1cv8/1C/licenses
Пользователь, под которым работает сервер (обычно usr1cv8), должен читать эту папку. Если файл лицензии копировали под root, выставьте владельца:
sudo chown -R usr1cv8:grp1cv8 /var/1C/licenses
Имя группы на вашем сервере может отличаться. Посмотрите его командой id usr1cv8 и подставьте нужное.
Для программных лицензий в Linux есть утилита ring из пакета инструментов лицензирования. Команда ring license list выводит список установленных лицензий. Остальные команды и параметры смотрите в справке ring license help — набор зависит от версии утилиты.
USB-ключ HASP и файл nethasp.ini
У аппаратного ключа нет файла лицензии на диске. Но компьютеру нужен драйвер ключа, а для сетевого ключа — ещё и настройка поиска.
Локальный ключ
Ключ вставлен в USB-порт того же компьютера, где запускают 1С. Нужен только установленный драйвер HASP (Sentinel). Если драйвера нет, Windows видит «неизвестное устройство», а 1С пишет, что ключ не найден.
Сетевой ключ
Ключ стоит на одном компьютере, там же установлен и запущен менеджер лицензий HASP License Manager. Клиенты находят его по сети через порт 475.
Чтобы клиенты не перебирали всю сеть широковещательными запросами, адрес менеджера прописывают в nethasp.ini. В 1С 8.3 файл лежит в каталоге conf платформы:
C:\Program Files\1cv8\conf\nethasp.ini
Пример содержимого:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_PORT_NUMBER = 475
NH_USE_BROADCAST = Disabled
Здесь 192.168.1.10 — адрес компьютера с ключом. Если менеджер лицензий не отвечает, проверьте, что порт 475 (UDP и TCP) открыт в брандмауэре на обеих сторонах.
Как проверить, какая лицензия используется и видит ли её 1С
Найти файл — полдела. Нужно ещё убедиться, что платформа его принимает.
Со стороны пользователя
Откройте в 1С Справка → О программе (в интерфейсе «Такси» — через главное меню, значок с тремя полосками). В окне есть сведения о полученной лицензии: программная это лицензия или ключ, и откуда она взята.
Со стороны сервера
- 🖥️ В консоли администрирования кластера откройте список сеансов. У каждого сеанса видно, какую лицензию он занял.
- 🖥️ Из командной строки то же самое показывает
rac session list --licenses(нужен запущенныйras). - 🖥️ В Linux —
ring license listдля перечня установленных файлов.
Если 1С сообщает об отсутствии лицензии
Самые частые тексты:
Не найден ключ защиты программы или полученная программная лицензия!Не обнаружено свободной лицензии!
Перенос и резервное копирование файлов лицензий
Файл .lic нельзя просто перенести на новый компьютер. Он привязан к параметрам оборудования и операционной системы. На чужом ПК платформа его не примет.
Что даёт резервная копия файла
Копия .lic спасает в двух случаях:
- 🗂️ папку
licensesслучайно удалили или почистили профиль, а компьютер и ОС те же; - 🗂️ нужно повторно получить лицензию : в файле записаны регистрационные данные, которые активатор попросит ввести точно так же, как при первой активации.
Храните вместе: копию .lic, конверт с пин-кодами и регистрационную анкету. Без пин-кодов перенос не сделать.
Как перенести лицензию на другой компьютер
- Перед заменой сохраните старый файл
.licиз папкиlicenses. - На новом компьютере установите платформу 1С той же или более новой версии.
- Запустите 1С. Без лицензии откроется окно получения лицензии.
- Введите резервный пин-код из комплекта и регистрационные данные — те же, что при первой активации.
- Выберите «для всех пользователей», чтобы файл лёг в
ProgramData(или/var/1C/licensesв Linux). - Убедитесь, что новый файл появился, и запустите базу.
Резервных пин-кодов в комплекте ограниченное число. Не тратьте их на эксперименты. Если пин-коды кончились, восстановление делают через фирму 1С по регистрационным данным владельца — обратитесь к своему партнёру.
Сервер и виртуальные машины
На виртуальной машине лицензия тоже привязана к «железу» — виртуальному. Миграция ВМ на другой хост, смена MAC-адреса или числа процессоров могут сделать файл недействительным. Перед такими работами сохраните .lic и держите под рукой резервный пин-код.
Работы с лицензией сервера планируйте на нерабочее время: если сервер потеряет лицензию, пользователи не смогут войти в базы, пока её не восстановите.
Типичные ошибки при работе с файлами лицензий
- ❌ Активировали «для текущего пользователя» на терминальном сервере. Лицензию видит только один сотрудник. Остальные получают ошибку. Решение — активировать для всех пользователей или переложить файл в
ProgramData. - ❌ Удалили «лишний» файл
.lic. В папке бывает несколько файлов: на 1 место, на 5 мест, серверная. Каждый из них — отдельная лицензия. Удаляйте только тот, назначение которого точно знаете. - ❌ Переименовали или отредактировали файл. Содержимое
.licзащищено. Любая правка делает его недействительным. - ❌ Скопировали файл с другого компьютера «на время». Не заработает из-за привязки к оборудованию.
- ❌ Чистка диска или антивирус удалили папку. Добавьте
licensesв исключения программ очистки профилей.
Частые вопросы
Можно ли открыть файл .lic и посмотреть, на сколько он пользователей?
Сколько файлов лицензий может лежать в одной папке?
Нужна ли лицензия на компьютере, где только сервер 1С, без клиентов?
Работает ли файловая база по сети с лицензией на сервере 1С?
Слетит ли лицензия при обновлении платформы 1С?
licenses не зависят от версии платформы. Обновление и переустановка 1С файлы не трогают, пока не меняются оборудование и ОС.