1C Мини-сервер Linux Postgres Pro AI Claude
Author
NMitin
Date Published
-1.png%3F2025-04-19T14%3A39%3A45.197Z&w=3840&q=100)
Шаги по установке сервера 1С:Предприятие на Linux MX-23.4 (KDE Plasma, system.d) и базы данных на Postgres Pro
Существенную помощь в успешном осуществлении описанного процесса оказало использование AI Claude .
Установка новейшей версии 1С на 12.12.2024г. Версия 8.3.26.1498 . Этот шаг не должен вызвать затруднений для опытного одинэсника.
Если уже установлен PosygreSQL , удалим его. Будьте аккуратны, если есть базы данных, которые используете, сделайте бэкап. Пути и версии установленного postgresql указываете свои:
1# Останавливаем сервис2sudo systemctl stop postgresql34# Удаляем пакеты PostgreSQL5sudo apt remove postgresql postgresql-15 postgresql-client-156sudo apt purge postgresql postgresql-15 postgresql-client-1578# Удаляем конфигурационные файлы и данные (будьте осторожны - это удалит все базы данных!)9sudo rm -rf /var/lib/postgresql/10sudo rm -rf /etc/postgresql/11sudo rm /etc/apt/sources.list.d/pgdg.list
Давайте настроим репозиторий Postgres Pro для 1C. Это более надёжный способ установки, так как все зависимости будут разрешены автоматически.
Сначала добавим ключ репозитория (Все ссылки мне подсказал ИИ, я только выбрал версию 17, а не 16, которую предложил ИИ ):
https://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO apt-key add GPG-KEY-POSTGRESPRO
Если и это не сработает, можно попробовать напрямую получить ключ через HTTPS:
https://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | sudo gpg --dearmor -o /usr/share/keyrings/postgrespro-1c.gpg
И затем добавить репозиторий с указанием пути к ключу:
https://repo.postgrespro.ru/1c/1c-17/debian bookworm main" | sudo tee /etc/apt/sources.list.d/postgrespro-1c.list
Тут система предупредила об устаревшем методе хранения ключей. Вот что на это ответил Claude:
Это предупреждение не критичное, но оно указывает на использование устаревшего метода хранения ключей GPG. Система APT постепенно отказывается от использования единого хранилища ключей /etc/apt/trusted.gpg в пользу отдельных файлов в каталоге /usr/share/keyrings/.
Если хотите следовать современным рекомендациям, можно обновить способ хранения ключа:
1#Удалим старый ключ:23sudo apt-key del "Postgres Pro"4#Добавим ключ в новом формате:56curl -fsSL https://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | sudo gpg --dearmor -o /usr/share/keyrings/postgrespro-1c.gpg7#Обновим файл источника с указанием нового расположения ключа:89echo "deb [signed-by=/usr/share/keyrings/postgrespro-1c.gpg] https://repo.postgrespro.ru/1c/1c-17/debian bookworm main" | sudo tee /etc/apt/sources.list.d/postgrespro-1c.list10
Далее была рекомендация просто установить:
1sudo apt update2sudo apt install postgrespro-1c-173sudo systemctl status postgrespro-1c-17
Однако я сразу сделаю здесь замечание, поскольку проверил, убедился, что будут проблемы, нашел решение и показываю его здесь. К этому решению пришел уже при повторной установке. После sudo apt update откройте менеджер пакетов и увидите примерно такую картину:

я отметил все пакеты для установки.
Postgres заработал сразу.
Установим пароль для пользователя postgres. Он будет создавать базы в 1С.
1sudo -u postgres psql2# В консоли PostgreSQL выполнить:3ALTER USER postgres WITH PASSWORD 'новый_пароль';4# Выйти из консоли5\q
На всякий случай конфигурационные файлы будут здесь:
/var/lib/pgpro/1c-17/data/postgresql.conf - основной файл конфигурации
/var/lib/pgpro/1c-17/data/pg_hba.conf - файл настройки аутентификации
но я принципиально не стал их менять, несмотря на то, что рекомендаций со стороны ИИ было достаточно. Нужно было проверить сначала чистую установку.
Теперь про лицензию мини-сервер. Чтобы управлять лицензиями нужна утилита ring, сейчас в составе дистрибутива 1С ее не было, скачал и установил
Утилита лицензирования 1С:Предприятия для Linux (64-bit)
Нужен JDK.
Создадим каталог для хранения лицензий :
1sudo mkdir -p /var/1C/licenses/2#Затем дал прочитать Claude вывод команды:34$ /opt/1C/1CE/components/1c-enterprise-ring-0.19.5+12-x86_64/ring license activate help5#На основании этой справки он выдал мне команду для регистрации лицензии:67sudo /opt/1C/1CE/components/1c-enterprise-ring-0.19.5+12-x86_64/ring license activate --first-name "Николай" --middle-name "Владимирович" --last-name "Митин" --email "my_mail@mail.ru" --pin 012345678901234 --country "RU" --serial 1234567890 --street "Home address" --town "Moscow" --zip-code "101000" --house "1" --building "1" --apartment "1"8#Проверим создана ли лицензия:910/opt/1C/1CE/components/1c-enterprise-ring-0.19.5+12-x86_64/ring license list
Несмотря на ошибки Java (они связаны с попыткой получить MAC-адрес), мы видим, что лицензия присутствует в системе:
012345678901234
ХХХХХХХХХХХХХХХ-ХХХХХХХХХХХХ (имя файла: "20241212124451.lic")
У меня есть USB-ключ разработчика, но с серверной базой он не стал работать. Как была решена эта проблема:
Создать файл /opt/1cv8/conf/nethasp.ini
1[NH_COMMON]2NH_IPX = Disabled3NH_NETBIOS = Disabled4NH_TCPIP = Enabled56[NH_TCPIP]7NH_SERVER_ADDR = 127.0.0.18NH_TCPIP_METHOD = TCP9NH_USE_BROADCAST = Disabled1011[NH_SERVER_ADDR]12NH_SERVER_NAME = 127.0.0.1
1#Настройка прав доступа к каталогу лицензий:23sudo chown -R usr1cv8:grp1cv8 /var/1C/licenses4sudo chmod -R 775 /var/1C/licenses5#Добавление пользователя в группу для доступа к USB:67sudo usermod -a -G plugdev usr1cv88#Перезапуск сервера 1С:910sudo systemctl restart srv1cv8-8.3.26.1498@default.service
Далее типичные действия по созданию базы 1С:

-1.png%3F2025-04-19T15%3A18%3A29.053Z&w=3840&q=100)
-1.png%3F2025-04-19T14%3A39%3A45.197Z&w=3840&q=100)