Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее Хостинг

Пошаговое руководство по запуску и первичной настройке сервера 1С:Предприятия 8.3 версии 8.3.19.1229 в ОС Debian GNU/Linux 10.10 с использованием СУБД PostgresPro-1C-13 и системы защиты HASP (USB-ключа).

Подготовка

Устанавливаем необходимые пакеты

# apt install wget bzip2 traceroute net-tools telnet htop atop iftop lsof git rsync policycoreutils-python-utils tar zip unzip gnupg fontconfig

Добавим в список репозиториев в файл /etc/apt/sources.list

# nano /etc/apt/sources.list
deb http://deb.debian.org/debian/ stable main contrib

и обновим список

# apt update

Установим ещё пакет msttcorefonts

# apt install msttcorefonts

Создадим каталог /home/1c/

# mkdir /home/1c/

переходим в него

# cd /home/1c/

и скачиваем с официального ресурса 1С https://releases.1c.ru/ архив deb64_8_3_19_1229.tar.gz

После этого распакуем архив deb64_8_3_19_1229.tar.gz

# tar -xpvf deb64_8_3_19_1229.tar.gz

Создадим каталог /home/1c/hasp/

# mkdir /home/1c/hasp/

переходим в него

cd /home/1c/hasp/

и скачаем ещё 2 пакета

# wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/9/haspd_7.90-eter2debian_amd64.deb
# wget http://download.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Debian/9/haspd-modules_7.90-eter2debian_amd64.deb

Открываем файл /etc/hosts

# nano /etc/hosts

и добавим такую строчку:

192.168.1.30 dvm30

Установка и настройка СУБД PostgresPro-1C-13

Добавим в список репозиториев postgrespro-1c-13

# cd /opt/
# wget http://repo.postgrespro.ru/pg1c-13/keys/apt-repo-add.sh
# sh apt-repo-add.sh

Устанавливаем СУБД postgrespro-1c-13

# apt install postgrespro-1c-13

После установки проверяем статус службы postgrespro-1c-13

# systemctl status postgrespro-1c-13

консоль покажет сообщение:

Loaded: loaded
Active: active (running)

Удаляем тестовую базу данных

# rm -rf /var/lib/pgpro/1c-13/data/

и запускаем настройку PostgresPro

# /opt/pgpro/1c-13/bin/pg-setup initdb --tune=1c --locale=ru_RU.UTF-8

Добавим службу postgrespro-1c-13 в автозагрузку

# systemctl enable postgrespro-1c-13

Настроим доступ к СУБД из локальной сети. Для этого откроем файл /var/lib/pgpro/1c-13/data/pg_hba.conf

# nano /var/lib/pgpro/1c-13/data/pg_hba.conf

и допишем в него такой параметр:

host all all 192.168.1.0/24 md5

Перезапустим службу postgrespro-1c-13

# systemctl restart postgrespro-1c-13

Переходим на пользователя postgres

# su - postgres

запускаем консоль psql

# psql

и зададим пароль для пользователя postgres

ALTER USER postgres WITH ENCRYPTED PASSWORD '147258';
\q;

Выходим из пользователя postgres

# exit

и возвращаемся в консоль.

Перезапустим службу postgrespro-1c-13

# systemctl restart postgrespro-1c-13

Переходим в каталог /home/1c/

# cd /home/1c/

и запустим установку всех пакетов, находящихся в директории

# apt install ./*.deb

Запускаем службу srv1cv83

# /opt/1cv8/x86_64/8.3.19.1229/srv1cv83 start

консоль должна отобразить статус:

Starting 1C:Enterprise 8.3 server: OK

Создадим символическую ссылку на службу srv1cv83 в /etc/init.d/

# ln -s /opt/1cv8/x86_64/8.3.19.1229/srv1cv83 /etc/init.d/srv1cv83
# /lib/systemd/systemd-sysv-install enable srv1cv83

Перезапустим srv1cv83 и проверим его статус

# systemctl restart srv1cv83
# systemctl status srv1cv83

Установка и настройка системы защиты HASP

Переходим в каталог /home/1c/hasp/

# cd /home/1c/hasp/

и установим оттуда все пакеты

# apt install ./haspd*.deb

Откроем файл конфигурации HASP-а

# nano /etc/haspd/hasplm.conf

и в самом конце допишем такую строчку

NHS_IP_LIMIT = 127.0.0.1, 192.168.1.0/24

192.168.1.0 — сеть, в которой будет работать hasp, с маской 255.255.255.0

Вставляем USB-ключ HASP в USB-разъём на сервере.

Запускаем службу haspd и включаем её в автозагрузку

# systemctl start haspd
# systemctl enable haspd

Проверяем статус запуска службы haspd

# systemctl status haspd

но на этом этапе будет лучше перезагрузить сервер

# shutdown -r now

Настройки в консоли администрирования 1С

Затем правой кнопкой мыши кликаем на Central 1C:Enterprise 8.3 servers (Центральный сервер). Здесь выбираем Создать -> Центральный сервер 1С:Предприятия 8.3

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В поле Имя сервера вводим dvm30

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

и он появится в оснастке консоли

Находим Информационные базы в Central 1C:Enterprise 8.3 servers -> dvm30 -> Кластеры -> Локальный кластер и кликаем правой кнопкой мыши Создать -> Информационная база

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В полях Имя и База данных заполним db_1c, в поле Сервер баз данных: server1c, тип СУБД: PostgreSQL, Пользователь сервера БД — postgres, Пароль пользователя БД — который был введён в скрипте в пункте Установка и настройка СУБД PostgresPro-1C-13 и также отметить чек-бокс на пункте Создать базу данных в случае её отсутствия

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

После нажатия OK информационная база появится в списке

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Настройка клиента 1C

При первом запуске появится предложение добавить в список информационную базу.

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Добавим существующую информационную базу

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В типе расположения выбираем пункт На сервере 1С:Предприятия и в поле Кластер серверов введём dvm30, а в Имя информационной базы — db_1c

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Кликаем Далее и в поле Версия 1С:Предприятия вводим 8.3, а в Разрядность — 64 (x86_64)

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

и теперь новая информационная база появится в списке:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Заключение

На этом настройка 1С завершена. Чтобы войти в 1С:Предприятие или Конфигуратор, необходима лицензия, необходимо наличие USB-ключа HASP, о котором было упомянуто выше. Но если на всех вышеперечисленных этапах при установках и настройках ошибок не возникало, то платформа должна работать корректно без ошибок и проблем.

Разворачиваем сервер 1С Предприятие на Linux Debian 9 с публикацией баз на web-сервер.
Основные компоненты сервера:

  • PostgreSQL;
  • Платформа 1С Передприятие 8.3;
  • Web сервер Apache.

1. Подготовка системы Linux Debian

Установим систему Debian 9 и обновим систему и пакеты:

apt-get update && apt-get upgrade && apt-get dist-upgrade

Настроим сеть согласно требованиям:

 nano /etc/network/interfaces
auto eth0 allow-hotplug eth0 iface eth0 inet static address 192.168.68.147 netmask 255.255.255.0 gateway 192.168.68.1

Перезагрузим сеть для принятия изменений:

/etc/init.d/networking restart
locale -a

Результат должен быть:

 C C.UTF-8 en_US.utf8 POSIX ru_RU.utf8

Если нет ru_RU.utf8, добавляем и меняем локализацию на ru_RU.utf8.

dpkg-reconfigure locales

перегружаем для принятия установок:

reboot

Получаем имя сервера Debian:

hostname -f

Обращаем на это внимание! Очень важная настройка для сервера 1С.
Настраиваем Hostname на сервере. Именно по этому имени будет подключение.

hostnamectl

правим файлы /etc/hosts и /etc/hostname, задаем hostname:

hostnamectl set-hostname 1c.server.ru

Система готова для установки сервера 1С Пердприятие.

2. PostgreSQL для 1С

Скачиваем с портала ИТС 1С Дистрибутив СУБД PostgreSQL для Linux x86 (64-bit) одним архивом (DEB).

Распаковываем архив в папку postgres:

mkdir postgres
tar -xvf postgresql_10.5_24.1C_amd64_deb.tar.bz2 -C postgres

10.5_24.1С — актальная версия PostgreSQL для 1С

Переходим в папку postgres/postgresql-10.5_24.1C_amd64_deb:

cd postgres/postgresql-10.5-24.1C_amd64_deb

Список пакетов, которые необходимы для установки postgresql-10.5_24.1C_amd64.deb

dpkg --info postgresql-10_10.5-24.1C_amd64.deb | grep Depends
apt-get install ssl-cert libossp-uuid16 libxslt1.1

Загружаем еще необходимые пакеты, заранее проверив актуальность версий пакетов:

wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb
wget http://ftp.us.debian.org/debian/pool/main/p/postgresql-common/postgresql-client-common_201_all.deb
wget http://ftp.us.debian.org/debian/pool/main/p/postgresql-common/postgresql-common_201_all.deb
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb

Все пакеты должны попасть в postgres/postgresql-10.5_24.1C_amd64_deb, где лежат и пакеты PostgreSQL. Устанавливаем все пакеты:

dpkg -i *.deb

Запускаем сервер PostgreSQL и ставим службу в автозагрузку:

service postgresql start
systemctl enable postgresql
service postgresql status

Задаем пароль для пользователя postgres:

su postgres
/usr/bin/psql -U postgres -c "alter user postgres with password 'Your_Password';"

Закрываем прослушку все адресов для PostgreSQL и задаем слушать только наш локальный адрес в /etc/postgresql/10/main/postgresql.conf:

listen_addresses = '192.168.168.147'

Задаем метод клиентской аутентификации и адрес в /etc/postgresql/10/main/pg_hba.conf в блоке IPv4 local connections:

host all all 192.168.168.147/32 md5
service postgresql restart
netstat -pant | grep postgres

3. Установка сервера 1С Предприятие 8

Ставим пакеты для 1С Сервер. Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts:

apt install imagemagick unixodbc libgsf-bin ttf-mscorefonts-installer

Чтобы система «увидела» установленные шрифты:

fc-cache –fv

Дополнительные внешние библиотеки:

apt-get install libfreetype6 libgsf-1-common unixodbc glib2.0

Скачиваем с портала ИТС 1С ‘Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем’ и распаковываем архив в папку 1c:

cd ../../
mkdir 1c
tar -xvf deb64_8_3_14_1694.tar.gz -C 1c

Последние три nls-пакета содержат языковые файлы и требуют обязательной установки только в том случае, если будут использоваться языки, отличные от русского и английского. Ставим сервер:

cd 1c
dpkg -i *.deb

Запускаем службу и в автозагрузку:

service srv1cv83 start
systemctl start srv1cv83
systemctl status srv1cv83

Проверяем, запущены ли процессы кластера:

ps ax | grep "1C/v8.3"

4. Публикация баз на web сервере Apache

apt-get install apache2

Даем доступ для Debian, в /etc/pam.d/common-session добавим:

session optional pam_umask.so umask=0002

Права web-сервера для 1С

usermod -a -G grp1cv8 www-data

Публикация базы на веб сервер:

/opt/1C/v8.3/x86_64/webinst -publish -apache24 -wsdir acc30 -dir /var/www/acc30/ -connstr "Srvr=1c.server.ru;Ref=ACC_30;" -confpath /etc/apache2/apache2.conf

-publish — публикация (если delete то удалить)
acc30 — алиас для публикации, т.е. база будет доступна по адресу 1c.server.ru/acc30
/var/www/acc30/ — папка на веб сервере, папка должна существовать
-connstr «Srvr=192.168.68.147;Ref=MyBase;» — Наш сервер 1С и названия ИБ
-confpath /etc/apache2/apache2.conf — путь к конфиг файлу apache2

service apache2 reload

Создадим каталог /1c/soft/hasp:

mkdir -p /1c/soft/hasp
cd /1c/soft/hasp
wget http://ftp.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd_7.90-eter1ubuntu_amd64.deb
wget http://ftp.etersoft.ru/pub/Etersoft/HASP/last/x86_64/Ubuntu/16.04/haspd-modules_7.90-eter1ubuntu_amd64.deb 

Поскольку драйвер использует 32-битные библиотеки, устанавливаем их:

apt-get install libc6-i386

Устанавливаем необходимые пакеты:

apt-get install make
dpkg -i haspd_7.90-eter1ubuntu_amd64.deb
dpkg -i haspd-modules_7.90-eter1ubuntu_amd64.deb

Запускаем драйвер защиты HASP:

systemctl start haspd
systemctl status haspd

Сервер для 1С Предприятие готов. Остается загрузить официальные лицензионные ключи в необходимые каталоги HASP согласно инструкции.

Сервер 1С — https://its.1c.ru/db/metod8dev#content:5953:hdoc
Hostname — https://linuxize.com/post/how-to-change-hostname-on-debian-9/#disqus_thread
HASP — https://its.1c.ru/db/v838doc#bookmark:adm:TI000000237

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Инструкция по установки серверную часть 1С:Предприятие на GNU/Linux на примере дистрибутива Debian 10 GNU/Linux.

HASP License Manager установка и настройка

HASP LIcense Manager – Менеджер аппаратных лицензий 1C:Предприятие.

# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.04/haspd-modules_7.90-eter2ubuntu_amd64.deb
# wget http://ftp.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.04/haspd_7.90-eter2ubuntu_amd64.deb

Далее устанавлеваем библиотеку C для 32-битоной системы

# apt update
# apt install make -y libc-i386
# apt install gdebi

Теперь устанавливаем сам HASP ML

# gdebi haspd-modules_7.90-eter2ubuntu_amd64.deb -n
# gdebi haspd_7.90-eter2ubuntu_amd64.deb

После настраиваем автозапуск демона на сервере.

# systemctl enable haspd

Теперь разрешаем доступ только к определенным IP в легальной сети добавляя строку в конфиг-файл /etc/haspd/hasplm.conf

NHS_IP_LIMIT 192.168.1.1 127.0.0.1 192.168.1.2-250

PostgreSQL Pro от 1С установка и настройка

Проверяем обновления и обновляем пакетов системы.

# apt update && apt upgrade

Настраиваем локаль системы

# dpkg-reconfigure locales
Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее
# locale -a
C
C.UTF-8
POSIX
ru_RU.utf8

Скачиваем скрипт для добавления репозитория PostgreSQL для 1С

$ wget https://repo.postgrespro.ru/pg1c-12/keys/apt-repo-add.sh

Запускаем скрипт и обновляем репозитории

# ./apt-repo-add.sh
# apt update

Устанавливаем PostgreSQL Pro

# apt install postgrespro-1c-12
# apt install postgrespro-1c-12-contrib
# apt install postgrespro-1c-12-client
# /opt/pgpro/1c-12/pg-setup initdb
# /opt/pgpro/1c-12/pg-setup service enable
# /opt/pgpro/1c-12/pg-setup service start

Установка и настройка 1С

Для начало скачиваем с сайта https://releases.1c.ru/total архив deb64_8_3_19_1150.tar.gz

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее
$ tar xzf deb64_8_3_19_1150.tar.gz
# gdebi 1c-enterprise83-common_xx.x.xx.xxxx.deb -n
# gdebi 1c-enterprise83-server_xx.x.xx.xxxx.deb -n
# gdebi 1c-enterprise83-ws_xx.x.xx.xxxx.deb -n
# gdebi 1c-enterprise83-common-nls_xx.x.xx.xxxx.deb -n
# gdebi 1c-enterprise83-server-nls_xx.x.xx.xxxx.deb -n
# gdebi 1c-enterprise83-ws-nls_xx.x.xx.xxxx.deb -n 

скичиваем deb-пакет с инсталлятором шрифтами с Microsoft

$ wget http://ftp.ru.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.8_all.deb
# gdebi ttf-mscorefonts-installer_3.8_all.deb -n
# fc-cache-fv

Предприятие сервер автозапуск как сервис Linux

Открываем в редакторе например nano

# nano /etc/systemd/system/srv1cv83@.service

и вводим то что представлено ниже

[Unit]
Description=1C:Enterprise Server 8.3 (%I)
Requires=network.target
[Service]
Type=simple
User=usr1cv8
Group=grp1cv8
# Path to directory with claster data
Environment=SRV1CV8_DATA=/home/usr1cv8/.1cv8/1C/1cv8/
# Number of the cluster port created by default during first
# launch of ragent
Environment=SRV1CV8_PORT=1540
# Number of cluster agent main port. This port is used by the
# cluster console to address the central server. Cluster agent
# port is also specified as the IP port of the working server.
Environment=SRV1CV8_REGPORT=1541
# Port range for connection pool
Environment=SRV1CV8_RANGE=1560:1591
# Security level:
# 0 - unprotected connections
# 1 - protected connections only for the time of user
# authentication
# 2 - permanently protected connections
Environment=SRV1CV8_SECLEV=0
# 1C:Enterprise server configuration debug mode
# blank - default - debug mode is off
# -debug - debug mode is on
#
Environment=SRV1CV8_DEBUG=
# Check period for connection loss detector, milliseconds
Environment=SRV1CV8_PING_PERIOD=1000
# Response timeout for connection loss detector, milliseconds
Environment=SRV1CV8_PING_TIMEOUT=5000
# 1C:Enterprise server keytab file.
# default - usr1cv83.keytab file in 1C:Enterprise server
# installation directory
Environment=KRB5_KTNAME=/opt/1cv8/x86_64/%I/usr1cv8.keytab
ExecStart=/bin/sh -c "/opt/1cv8/x86_64/%I/ragent -d ${SRV1CV8_DATA} -port ${SRV1CV8_PORT} -regport ${SRV1CV8_REGPORT} -range ${SRV1CV8_RANGE} \
-seclev ${SRV1CV8_SECLEV} -pingPeriod ${SRV1CV8_PING_PERIOD} -pingTimeout ${SRV1CV8_PING_TIMEOUT} ${SRV1CV8_DEBUG}"
Restart=always
RestartSec=5
[Install]
DefaultInstance=current
WantedBy=multi-user.target

Теперь что бы запустить нужно будет вводить нужно вводить1

# systemctl enable srv1cv83@xx-x-xx-xxxx # добавляем сервис в автозапуск
# systemctl start srv1cv83@xx-x-xx-xxxx # запускаем сервес

  1. xx-x-xx-xxxx – версия пакетов
Читайте также:  Хотите заявить права на свое цифровое пространство? Проверьте доступность доменного имени и начните прямо сейчас

Поделиться ссылкой:

Предлагаю взять на заметку информацию по установке и настройке в формате typical, typical, done.

Небольшая статья о том, как быстро и просто установить с нуля сервер БД PostgreSQL на ОС Debian 9.7 для работы с 1С: Предприятие 8.3.

Эта статья может использоваться как «напоминалка» для тех, кто уже «всё знает» и «всё умеет», но у кого «не всё под рукой». Либо как ЧАВО для тех, кто «хотел бы попробовать».

В качестве сервера выступает виртуальная машина, полностью «голая», со следующими характеристиками:

CPU Intel Core i3-8100 3.6 GHz

RAM 8 Gb DDR4 2400Mhz

У этой машины также подключена сетевая карта в режиме NAT, с дальнейшей возможностью выхода в интернет.

Процесс создания ВМ не будет рассматриваться. Предположим, что уже есть готовая ВМ.

Этап первый. Установка Debian 9.7

Первым делом, необходим сам установочный дистрибутив ОС. Его можно загрузить с ресурса https://www.debian.org, перейдя в раздел «Где взять Debian»

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Как я писал ранее, у виртуальной машины, на которую будет происходить установка, подключена сетевая карта и будет возможность выхода в интернет, поэтому достаточно будет загрузить «Небольшой установочный образ» для установки ОС (netinst). Но даже если машина не подключена к сети, то в итоге все равно получим базовую систему. А сеть можно будет настроить уже вручную и необходимые пакеты установить отдельно.

Выбираем «Небольшой установочный образ»  и далее образ под нужную нам архитектуру процессора. В моем случае я выбрал образ amd64, который говорит что устанавливать будем 64-х битную систему:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Загрузили образ. Подключили его к виртуальной машине, выбрали загрузку с CD и запустили её. Первое окно, которое мы видим, это окно выбора вариантов установки ОС:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Графическая установка, установка в текстовом режиме, доп. опции при установке, а также установка с речевым синтезом, которая сопровождается «голосом». 

Для меня предпочтительней вариант установки в текстовом режиме (Install). Он довольно быстрый, простой и понятный, поэтому выбираю его.

Первое же окно после выбора варианта установки, это выбор языка установки ОС:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Хочу обратить внимание на то, что выбор языка установки также определит язык по-умолчанию который будет в установленной системе. В любом случае всегда можно добавить поддержку необходимого нам языка уже в установленной ОС. Поэтому на этом этапе выбираем English и идём далее.

После выбора языка предлагают выбрать страну, которая определит часовой пояс и языковую локализацию, для адаптации нашей ОС к используемому нами программному обеспечению. Можно это сделать на этапе установки ОС, либо уже заняться этими настройками позже. Рассмотрим вариант «позже» и выбираем страну «United States», которая выбрана по-умолчанию и раскладка клавиатуры также английская. После чего начинается процесс установки ОС:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В процессе установки, система несколько раз предложит нам ввести какие-то данные. 

Первый этап это «сетевое имя» (это имя компьютера в локальной сети) и «доменное имя» (это имя компьютера в домене, при наличии) нашей ВМ. Вводим необходимые нам имена и продолжаем наблюдать за установкой. При установке я указал имя установленное по-умолчанию — debian. Доменное имя оставил пустым.

если ВМ будет находиться в рабочей группе, а не в домене, тогда поле ввода имени домена можно оставить пустым.

Следующим этапом нам будет предложено придумать и ввести 2 раза пароль от пользователя root:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

А также создать нового пользователя, без административных прав. Пишем имя человека, кто будет закреплен за пользователем (оно может совпадать с именем пользователя), имя нового пользователя  и также вводим 2 раза пароль от него:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Далее нам предлагают выбрать часовую зону, исходя из страны, которую обозначили ранее при установке:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Система продолжает устанавливать свои компоненты, после чего нам предлагают выбрать структуру и разметку дисков нашей ОС:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Здесь можем выбрать

  • весь диск для использования
  • использование менеджера логических томов (LVM)
  • использование LVM + шифрование дисков
  • создать структуру вручную, при достаточных знаниях и навыках.

После того как мы определились со структурой наших дисков, выбираем диски, которые будут участвовать в настройке, и саму схему разметки выбранных дисков. Подтверждаем выбор и продолжаем установку ОС.

Я выбрал использование всего диска, без логических томов.

Так как установка происходила с образа netinst, то система просмотрела весь установочный диск и предлагает сканировать другие диски, на наличие дополнительных пакетов для установки. Нам это не интересно, у нас есть «интернет» с помощью которого установим все необходимые дополнительные пакеты, поэтому смело нажимаем «No» и переходим к этапу подключения так называемых репозиториев, выбрав сперва страну, а потом сам ресурс, который находится на территории этой страны:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Репозитории — это хранилища различных пакетов, для установки их в ОС. Когда требуется что-либо установить, то сделать это можно локально, скачав нужные пакеты на компьютер, а можно подключить хранилища в интернете, где находятся эти самые пакеты для установки.

После установки стандартных пакетов, система предложит установить дополнительные пакеты из  предопределенных:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

На этом этапе нас интересует SSH сервер, с помощью которого мы сможем подключатся к нашей ОС удаленно через протокол SSH, и стандартные системные утилиты, для администрирования системы.

Это один из заключительных этапов установки ОС Debian на ВМ. Ждем завершения установки и конфигурирования.

Последним этапом будет установка загрузчика операционной системы:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Выбираем диск, на который будет записан загрузчик.

После этого система сделает последние настройки и перезагрузится уже в рабочем виде. Установка Debian успешно завершена и можно переходит ко второму этапу.

Этап второй. Настройка системы и установка PostgreSQL

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

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Где надо указать IP адрес ВМ, порт по-умолчанию 22. Для соединения нажать кнопку Open, а тип подключения SSH.

Во время установки был создан отдельный пользователь, под которым и будем подключатся к системе:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Удаленный доступ под пользователем root по-умолчанию запрещен. 

Первым делом — поставим последние обновления ОС. Для этого необходимо переключиться на пользователя root и обновиться, выполнив команды:

su
# переключение на пользователя root. После команды необходимо ввести пароль от пользователя root
apt update
# обновление списка пакетов доступных для загрузки
apt upgrade
# обновление установленных в системе пакетов, при наличии более свежих в подключенных репозиториях

Следующий шаг — изменение локали системы.

Так как ранее устанавливали систему «по-умолчанию» и выбрали английскую локаль, а в подавляющем большинстве разработчики и пользователи 1С работают на русском языке, то перед установкой PostgreSQL и его настройкой, необходимо изменить локаль системы также на русскую. Для этого необходимо ввести следующую команду:

dpkg-reconfigure locales
# изменение локализации в ОС

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

тут выбрано en_US.UTF-8 и надо выбрать еще ru_RU.UTF-8, выбрав ее основной и после это необходимо перезагрузить ОС для принятия изменений

Теперь можно начать установку PostgreSQL.

Существуют несколько сборок для работы с 1С:

1. От Etersoft — http://etersoft.ru/products/postgre 

Последняя версия (на 25.01.2019) сборки для Linux 9.2.20

2. От Postgrespro — https://postgrespro.ru/products/1c_build

Всегда актуальные и свежие сборки для 1С

Последняя версия сборки на момент публикации статьи (на 25.01.2019) — 10.5-10.1С

Рассмотрим установку PostgreSQL от команды Postgrespro

Заходим на сайт https://postgrespro.ru/ где нас интересует раздел «СУБД для работы платформы 1С:Предприятие».

В разделе есть «Генератор инструкций«, который позволяет выбрать необходимый пакет СУБД для загрузки и установки:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

На данной странице собраны все сборки PostgreSQL, которые работают с 1С для различных операционных систем. Экспериментальные и архивные. Также есть отдельный раздел рекомендованных версий для установки и работы с 1С «Поддерживаемые версии PostgreSQL для 1C«

Я остановил свой выбор на версии PostgreSQL 1C 11.1 для ОС Debian. НО по данной инструкции можно установить любую версию PSQL, которая есть на ресурсе.

Итак. Снова проверяем что в системе стоит по-умолчанию поддержка русской локали. Для этого набираем команду:

locale -a
# Отображение установленных локалей в системе. Должны увидеть:
C
C.UTF-8
en_US.utf8
POSIX
ru_RU.utf8

Начинаем процесс установки:

 apt install -y wget gnupg2 || apt install -y gnupg
# установка утилиты, которая позволяет работать с шифрованными данными, ключами, сертификатами.
 wget -O - http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | apt-key add -
# загрузка и добавления ключа в систему для дальнейшей загрузки и установки PSQL
 echo deb http://repo.postgrespro.ru/1c-archive/pg1c-11.1/debian stretch main > /etc/apt/sources.list.d/postgrespro-1c.list
# добавление адреса репозитория, в котором находятся интересующие нас пакеты PSQL для установки.
 apt-get update -y
# обновление списка пакетов, доступных для загрузки apt install -y postgrespro-1c-11-server
# установка СУБД PSQL
 /opt/pgpro/1c-11/bin/pg-setup initdb
# создание и инициализация кластера СУБД
 /opt/pgpro/1c-11/bin/pg-setup service enable
# активация службы PSQL в системе
 service postgrespro-1c-11 start
# запуск службы PSQL

Весь процесс установки необходимо производить от имени пользователя root. Иначе можно получить ошибки при установке.

После установки и запуска службы PostgreSQL можно проверить статус этой службы, введя команду:

 service postgrespro-1c-11 status
# проверка статуса службы PSQL. В ответ должны увидеть:
postgresql.service - PostgreSQL RDBMS Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled) Active: active (exited) since Fri 2019-02-01 05:41:02 EST; 1min 29s ago Process: 513 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 513 (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 19660) CGroup: /system.slice/postgresql.service

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. ПодробнееПеред тем как приступить к созданию баз 1С, необходимо задать пароль внутреннему пользователю PostgreSQL. Для этого вводим команды:

su postgres
# переключение на системного пользователя postgres. Дальнейшая команда будет выполнена от его имени
/opt/pgpro/1c-11/bin/psql -U postgres -c "alter user postgres with password 'Your password';"
# создание и установка пароля пользователю postgres
# где -U postgres - системный пользователь от имени которого будет запущен PostgreSQL, user postgres - внутренний пользователь БД.
# Your password - пароль который мы задаем внутреннему пользователю БД.

Если появилась надпись «ALTER ROLE» — значит все хорошо, все получилось.

Читайте также:  Упрощение совместной работы: Docker Compose для сервера документов Onlyoffice

Если используется сервер 1С на другой машине и будет выполняться подключение к серверу БД по сети, то есть 2 момента:

1. По-умолчанию, PostgreSQL настроен на подключение только с локального хоста (localhost) по порту 5432. Поэтому необходимо в файле конфигурации postgresql.conf указать адрес, на котором будет приниматься соединения (в моём случае это локальный IP адрес машины, на которой установлен PostgreSQL):

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В нашем случае файл конфигурации находится /var/lib/pgpro/1c-11/data. Чтобы его открыть, вводим команду

nano /var/lib/pgpro/1c-11/data/postgresql.conf

Файл откроется в режиме редактирования.

2. Второй момент на который необходимо обратить внимание, это правила авторизации пользователей к базам данных и правила разрешающие подключения к этим базам «из вне». Есть файл конфигурации клиентской аутентификации pg_hba.conf. В нем необходимо разрешить следующее:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Файл находится в той же папке и запустить его можно той же командой.

Я добавил в блок «IPv4 local connections» строку, которая предоставляет доступ ко всем БД, всем пользователям с адреса 192.168.154.137 — это IP адрес сервера 1С: Предприятие.

На этом настройка сервера Postgresql закончена и можно начать создавать БД в 1С на сервере Postgresql, используя следующие данные:

Сервер баз данных — IP адрес сервера Postgresql

Тип СУБД — Postgresql

Пользователь сервера БД — postgres и пароль тот, который был назначен ранее.

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Теперь рассмотрим сборку PostgreSQL от 1С

Разница в установке сборки от 1С заключается в том, что потребуется изначально загрузить все установочные файлы с сайта ИТС на какой-нибудь другой компьютер. Скопировать эти файлы на наш. И только потом начинать установку «вручную» PSQL.

Для начала заходим на страницу https://releases.1c.ru/total и выбираем PostgreSQL:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Последняя сборка от 1С на момент публикации — 10.5-10.1C

Для простоты навигации в нашей ОС, я устанавливаю файловый менеджер Midnight Commander. Он помогает мне быстро передвигаться по файлам и папкам ОС и работать с ними. Установить менеджер можно командой от имени пользователя root:

su
apt install mc
# установка файлового менеджера

Скопировав данный архив, необходимо его распаковать:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Распаковать его можно командой:

tar -xvf postgresql_10.5_10.1C_amd64_deb.tar.bz2 -C postgres
# распаковка загруженного архива
# где postgres - это созданная мною папка для "удобства", куда я распаковал архив.

Переходим в папку postgres/postgresql-10.5-10.1C_amd64_deb:

cd postgres
cd postgresql-10.5-10.1C_amd64_deb

Для установки требуются дополнительные пакеты. Чтобы проверить названия этих пакетов, вводим команду:

dpkg --info postgresql-10_10.5-10.1C_amd64.deb | grep Depends
# команда отображает список дополнительных пакетов, которые необходимы для установки пакета postgresql-10_10.5-10.1C_amd64.deb

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Далее продолжаем установку:

apt-get install ssl-cert libossp-uuid16 libxslt1.1 
# установка дополнительных пакетов, необходимых для работы PSQL
wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u10_amd64.deb
wget http://ftp.us.debian.org/debian/pool/main/p/postgresql-common/postgresql-client-common_199_all.deb
wget http://ftp.us.debian.org/debian/pool/main/p/postgresql-common/postgresql-common_199_all.deb
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb
# загрузка дополнительных пакетов для работы PSQL

Весь процесс установки необходимо производить от имени пользователя root. Иначе можно получить ошибки при установке.

В сборках от 1С нет полного набора библиотек, необходимых для установки. Поэтому при каждой установке требуется смотреть на ошибки, в которых указываются отсутствующие пакеты.

Хочу отметить, что версии этих пакетов для разных версий ОС Debian, как и для разных версий PostgreSQl — свои.

В нашем примере используются нужные библиотеки конкретно для версий Debian 9 и PostgreSQL 10 от 1С.

После этого можно начать установку сборки PostgreSQL от 1С:

dpkg -i *.deb
# установка всех пакетов с расширением deb, что находятся в папке.

Хочу обратить внимание на то, что на момент написания этой статьи была доступна версия PSQL 10.5-10.1C. 

На момент публикации статьи (01.02.2019) эта версия для загрузки уже недоступна, но появилась новая версия 10.5-11.1C.

Попробуем установить эту версию.

dpkg -i *.deb
# установка всех пакетов deb из папки

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

libssl1.0.0 версии 1.0.0 или старше

postgresql-client-common версии 182 или старше

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Проверяем названия дополнительных пакетов для установки командой:

dpkg --info postgresql-10_10.5-11.1C_amd64.deb | grep Depends

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Ищем в интернете нужные пакеты, загружаем и копируем их на ВМ в ту же папку и пробуем повторно установить PSQL

apt -f install
# команда, которая исправляет неправильно установленные пакеты и их зависимости или удаляет.
dpkg -i *.deb
# установка всех deb пакетов из папки

При повторной установки появляются еще несколько пакетов, которые необходимы. Например, при ошибке появился пакет libicu55 версии 55 и выше, который нужно установить.

В очередной раз ищем эти пакеты и загружаем их в одну папку. Выполняем повторно команды

apt -f install
# команда, которая исправляет неправильно установленные пакеты и их зависимости или удаляет.
dpkg -i *.deb
# установка все deb пакетов из папки

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

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Можно теперь запускать сервер PSQL и ставить службу в автозагрузку:

Сделать это можно введя команду:

service postgresql start
# запуск службы PSQL
systemctl enable postgresql
# активация службы

И сразу проверим все ли хорошо, проверив статус службы:

service postgresql status
# проверка статуса службы

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

как видно на скриншоте — установлена и запущена последняя актуальная версия PSQL на 01.02.19

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

Задаем пароль внутреннему пользователю PostgreSQL:

su postgres
/usr/bin/psql -U postgres -c "alter user postgres with password 'Your password';"

Если вы используете сервер 1С на другой машине и будете подключаться к серверу БД по сети, то есть 2 момента:

1. По-умолчанию, сборка PostgreSQL от 1С настроена на подключение с любого адреса по порту 5432. Поэтому необходимо в файле конфигурации postgresql.conf указать адрес, на котором будет приниматься соединения (в моём случае это локальный IP адрес машины, на которой установлен PostgreSQL):

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

В нашем случае файл конфигурации находится /etc/postgresql/10/main

2. Второй момент на который необходимо обратить внимание, это правила авторизации пользователей к базам данных и правила разрешающие подключения к этим базам «из вне». Есть файл конфигурации клиентской аутентификации pg_hba.conf. В нем необходимо разрешить следующее:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

Я добавил в блок «IPv4 local connections» строку, которая предоставляет доступ ко всем БД, всем пользователям с адреса 192.168.154.137 (Это IP адрес сервера 1С: Предприятие». По-умолчанию доступ разрешен всем.

Вот вроде и всё. Теперь на сервере 1С создаем базу и проверяем:

Настроить и скомпилировать postgresql для 1с debian 10 с патчами. Подробнее

На этом этапе установка и запуск двух разных сборок PostgreSQL для 1С закончена. 

Дополнительная информация для ознакомления:
Настольная книга администратора Debian

Автоматическая установка на Debian x64 сервера PostgreSQL.1C + 1С + Apache и публикация тестовой БД

Что нам понадобится

Дистрибутив Debian, качаем на официальном сайте первый установочный CD, его достаточно

WinSCP —  графический клиент протокол SCP поверх SSH

PuTTY – консольный клиент удаленного доступа по SSH

Все описанные действия проводятся на «свежеустановленной» операционной системе Debian x64, при инсталляции которой выбраны следующие параметры:

— на все вопросы о языке и клавиатуре выбраны русский/русская

— при установке из предлагаемых пакетов к установке выбраны только Стандартные системные утилиты и SSH-сервер (если есть возможность его выбора).

— имя серверу даем dx64-psql1c

— задаем и запоминаем пароль суперпользователя (root)

— создаем пользователя с именем к примеру jd, задаем ему пароль и запоминаем его тоже

ОБЯЗАТЕЛЬНО у сервера должен быть доступ в интернет, т.к. в процессе установки скачиваются необходимые пакеты.

ВНИМАНИЕ! В процессе установки будет скачано пакетов объемом примерно 300МБ.

ВНИМАНИЕ! Скрипт установки тестировался ТОЛЬКО на 64-битных версиях всех компонент сервера.

Если хотим установить PostgreSQL от 1С, скачиваем дистрибутив сервера PostgreSQL с сайта 1С, нужен «Дистрибутив СУБД PostgreSQL для Linux x86 (64-bit) одним архивом (DEB)», полученный файл postgresql-х.х.х-1.1C_amd64_deb.tar.bz2 копируем в папку \1c-setup\postgres.

Если хотим установить PostgreSQL от Postgres Professional, дистрибутив PostgreSQL никакой не скачиваем, скрипт сам подключит нужный репозитарий и установит.

Скачиваем дистрибутив сервера 1С с сайта 1С, нужен «Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем», полученный файл deb64.tar.gz копируем в папку \1c-setup\1c

Если при установки Debian не был доступен пункт установки SSH-сервер (начиная с версии 8.4.0), проверяем, что установочный диск Debian находится в дисководе, заходим в консоль Debian под root-ом и выполняем команду

apt-get install openssh-server -y

Входим на сервер Debian с помощью WinSCP под пользователем, которого создали при установке Debian, вход по SSH под root-ом в последних версиях Debian отключен, включить несложно, но он нам не нужен.

Копируем папку 1c-setup на сервер в домашнюю папку пользователя, в ней мы автоматически оказываемся при первом входе на сервер.

Входим на сервер Debian с помощью PuTTY под пользователем, которого создали при установке Debian, вводим команду:

su

в ответ на запрос вводим пароль суперпользователя.

Приглашение командной строки должно принять примерно следующий вид:

root@dx64-psql1c:/home/jd#

Копируем в буфер обмена следующие 3 строки и щелчкаем правой кномки мыши в PuTTY на против приглашения командной строки:

cd 1c-setup
chmod +x all.setup
./all.setup debug publishdb=test

Скрипт выведет текущий вариант установки, определенный по параметрам его запуска и наличию дистрибутива PostgreSQL, если нас все устраивает, нажимаем Y и запустится установка сервера в указанном варианте, в примере для сервера 1С будет включен режим отладки, опубликуется на WEB-сервере БД «test»

Через 10 минут подходим и если не было проблем с подключением к интернет во время установки, перезагружаем сервер и он готов к работе.

Параметры скрипта all.setup:

nopsql — не устанавливать сервер PostgreSQL

no1c — не устанавливать сервер 1С

noapach — не устанавливать сервер Apache

debug — если устанавливается сервер 1С, на нем будет включен режим отладки

publishdb=DBName — если устанавливается web-сервер, на нем будет опубликована база с названием DBName

Порядок параметров не важен.

Если в процессе установки скрипт в папке \1c-setup\postgres\ найдет файлы дистрибутива PostgresSQL от 1С (файлы с расширением .bz2 или .deb), он установит сервер PostgreSQL из них, если таких файлов не найдет, то установит сборку PostgreSQL от Postgres Professional с их репозитария.

ВНИМАНИЕ! Для нормальной работы с тестовым сервером, с машины, на которой будет запускатся клиент 1С, сервер должен быть доступен по имени, самый простой вариант, на машине, на которой будет запускатся клиент 1С, в файле hosts прописываем соответствие адреса сервера его имени.

Создаем на новом сервере пустую базу с именем «test» и загружаем в нее тестовую конфигурацию.

При установке сервера PostgreSQL пользователю postgres устанавливается пароль postgres.

Читайте также:  Лучший хостинг для вордпресс 2020 и какой хостинг выбрать для блога на вордпресс в 2023

В процессе установки автоматически правятся некоторые конфигурационные файлы, оригинальные копии сохраняются на сервере в папке /1c-setup/backup/

Протокол установки находится в папке /1c-setup/log/

В архиве содержится только папка 1c-setup без дистрибутивов 1С и PostgreSQL.

Особенности в процессе установки предидущих версий скрипта

Имя архива: deb8.2.0×64-psql9.4.2-1c8.3.6.zip

Копируем в буфер обмена следующие 3 строки и щелчкаем правой кномки мыши в PuTTY на против приглашения командной строки:

Запустится полная установка сервера, для сервера 1С будет включен режим отладки, опубликуется на WEB-сервере БД «test»

    Параметры скрипта all.setup:

    — первый параметр если есть и он равен ON, при установке на сервере 1С будет включен режим отладки

    — второй параметр если есть, будет опубликована на web-сервере база с соответствующим названием

Порядок параметров важен, т.е. если нужно установить сервер без отладки и опубликовать базу my_test, надо выполнить: ./all.setup OFF my_test

    
    В архиве содержится папка 1c-setup со скриптами для установки, полный протокол работы скриптов при успешной установке сервера и скриншоты от установки Debian до входа в БД «тест» через браузер

PostgreSQL 9.3.4-1.1C на Ubuntu Server 14.04.2 LTS (//infostart.ru/public/372894/) — здесь подсмотрен скрипт, рассчитывающий оптимальные значения параметров shmmax и shmall

Версии компонентов сервера, на которых проверены скрипты установки

Имя архива: deb8.2.0×64-psql9.4.2-1c8.3.6.zip
Версия Debian: 8.2.0-amd64
Версия PostgreSQL от 1С: 9.4.2-1.1C
Имя файла дистрибутива PostgreSQL от 1С: postgresql-9.4.2-1.1C_amd64_deb.tar.bz2
Версия сервера 1С: 8.3.6.2299
Имя файла дистрибутива сервера 1С: deb64.tar.gz

Имя архива: deb8.4.0×64-psql9.4.2(8)-1c8.3.8.zip
Версия Debian: 8.4.0-amd64
Версия PostgreSQL от 1С: 9.4.2-1.1C
Имя файла дистрибутива PostgreSQL от 1С: postgresql-9.4.2-1.1C_amd64_deb.tar.bz2
Версия PostgreSQL от Postgres Professional: 9.4.8
Версия сервера 1С: 8.3.8.1675
Имя файла дистрибутива сервера 1С: deb64.tar.gz

Имя архива: deb9.8×64-psql10.6-1c8.3.13.zip
Версия Debian: 9.8.0-amd64
Версия PostgreSQL от Postgres Professional: 10.6
Версия сервера 1С: 8.3.13.1644
Имя файла дистрибутива сервера 1С: deb64_8_3_13_1644.tar.gz

Имя архива: deb8.2.0×64-psql9.4.2-1c8.3.6.zip

Первая версия скрипта полностью автоматической установки.

Имя архива: deb8.4.0×64-psql9.4.2(8)-1c8.3.8.zip

Обновлены версии пакетов, необходимые для работы сервера 1С протестированной версии.

Улучшено использование параметров вызова скрипта, добавлена возможность выборочной установки компонентов сервера.

Устранены ошибки и оптимизирована работа по правке конфигурационных файлов.

Добавлена возможность установки сервера PostgreSQL от Postgres Professional (+ добавлена команда включения автоматического запуска PostgreSQL при загрузке сервера, т.к. при последних тестах 31.05.2016 он перестал стартовать сам).

Убран патч скрипта запуска сервера 1С, т.к. в последних дистрибутивах 1С он устанавливается правильный «из коробки».

Добавлен принудительный запуск сервера 1С сразу после установки, для возможности работы с сервером без перезагрузки (если не включен режим отладки).

Для публикации базы данных на WEB сервере заменен самописный костыль на штатный механизм 1С.

Имя архива: deb9.8×64-psql10.6-1c8.3.13.zip

Установка выполняется на последнюю версию Debian.

Убраны сторонние и старые репозитарии для установки требуемых зависимостей, используются только репозитарии текущей версии Debian.

Обновлены версии пакетов и дополнены библиотеки, необходимые для полноценной работы сервера 1С,  согласно описания разработчиков 1С протестированной версии.

Установки сервера PostgreSQL возможна только от Postgres Professional версии 10.6 т.к. на текущий момент пути установки жестко завязаны на версию.

Дружим 1С с Линуксом ИЛИ Установка окружения для работы с 1С на Линуксе под Постгресом и Апачем (в 2023-м году).

Платформа 1С в последнее время бурно развивается, приобретая много различных функций, в том числе поддержку различных операционных систем (ОС). Возможность установки сервера 1С на Линукс существует ещё с платформы 8.2 и даже на данном портале можно найти множество статей и руководств по данной тематике. Но все же я опишу процесс подготовки тестового (или даже боевого) сервера на Линуксе в современных реалиях.

1) Установка GNU/Linux

За основу серверной операционной системы возьмем самый свежий 64-х разрядный дистрибутив Ubuntu Server 22.04.1 LTS (если вы готовите рабочий сервер, то обязательно выбирайте редакцию с долгосрочной поддержкой — LTS версию). Устанавливаем операционную систему на физический или виртуальный сервер (в качестве эксперимента я использовал виртуализацию на основе VirtualBox). Думаю, что проблем с установкой не должно возникнуть. Если не совсем понимаете, соглашайтесь с установщиком, выбирая все опции по умолчанию.

После входа в систему обновим её до актуального состояния:

# apt update && apt upgrade -y && apt autoremove -y && reboot

Здесь и далее команды, начинающиеся с ‘#’ выполняются под суперпользователем (или с повышением привилегий с помощью команды sudo), а с ‘$’ — под текущим пользователем с ограниченными правами.

 Если вы проделываете установку на VirtualBox, то

Для установки статического IP адреса отредактируем файл, в котором прописаны сетевые настройки:

# nano /etc/netplan/00-installer-config.yaml

 Примерная минимальная настройка:

# netplan apply

Сменим локаль, если выбрали при установке не русский язык (данный шаг важен, если будете ставить Постгрес):

# dpkg-reconfigure locales

и отметим её же по умолчанию.

Для возможности удаленного администрирования установим ssh (если в инсталляторе ОС не выбирали OpenSSH Server) :

# apt install -y openssh-server

На этом элементарную предподготовку ОС можно считать выполненной.

2) Установка 1С

Теперь ставим платформу 1С. Я использовал 64-х битную платформу 8.3.22.1750 (tar.gz-архив, с общим инсталлятором под разные дистрибутивы).

Скачиваем файл server64_8_3_22_1750.tar.gz (релизы 1С).

 Если будете устанавливать более ранние платформы, то

Распаковываем данный архив:

$ tar -xzvf server64_8_3_22_1750.tar.gz

Устанавливаем сервер 1С:

# ./setup-full-8.3.22.1750-x86_64.run

Придется последовательно ответить на вопросы инсталлятора, какие модули и языки нам нужны.

Обязательно укажите для установки «Сервер 1С:Предприятия 8» и «Модули расширения веб-сервера»

Можно указать ещё сервер хранилища конфигураций, если в нем есть потребность.

Даём созданному эской пользователю права на директорию с установленной платформой:

# chown -R usr1cv8:grp1cv8 /opt/1cv8

Ставим шрифты от M$ (соглашаемся с лицензией при установке):

# apt install -y ttf-mscorefonts-installer

Для того, чтобы система «увидела» установленные шрифты, обновим кэш информации о шрифтах:

# fc-cache –fv

Для управления данным экземпляром сервера как обычными службами выполним:

# systemctl link /opt/1cv8/x86_64/8.3.22.1750/srv1cv8-8.3.22.1750@.service

Активируем запуск сервера при загрузке системы:

# systemctl enable srv1cv8-8.3.22.1750

Запустим и проверим состояние службы (должна быть в состоянии active):

# systemctl start srv1cv8-8.3.22.1750
$ systemctl status srv1cv8-8.3.22.1750

Если у вас отсутствует DNS-сервер, который будет резолвить имена, то нужно прописать имя сервера в хосты на клиентах (иначе не удастся подключиться с клиента 1с к серверу 1с):

# nano /etc/hosts
ИЛИ
> notepad %windir%\system32\drivers\etc\hosts (с повышением привилегий)

    xxx.xxx.xxx.xxx    servername

Установим драйвер аппаратных лицензий платформы ():

а) скачиваем на сайте релизов 1С либо на сайте производителя (Sentinel LDK Run-time) и распаковываем:

$ tar -xzvf Sentinel_LDK_Ubuntu_DEB_Run-time_Installer.tar.gz

б) устанавливаем драйвера Sentinel HASP для Linux :

# cd Sentinel_LDK_Ubuntu_DEB_Run-time_Installer && dpkg -i aksusbd_8.53-1_amd64.deb

в) проверим состояние служб (должны быть в состоянии active):

$ systemctl status aksusbd.service
$ systemctl status hasplmd.service

Учтите, что для сервера 1С нужен соответствующий ключ защиты.

3) Установка PostgreSQL

Следующим шагом будет установка бесплатной СУБД PostgreSQL от «Postgres Pro» (СУБД для работы платформы 1С:Предприятие)

Скачаем скрипт для добавления стороннего репозитория от разработчиков СУБД:

$ curl -o pgpro-repo-add.sh https://repo.postgrespro.ru/pg1c-14/keys/pgpro-repo-add.sh
# sh pgpro-repo-add.sh

И установим саму СУБД (данная сборка создана на основе открытой PostgreSQL с патчами от фирм 1С и Postgres Professional):

# apt install -y postgrespro-1c-14

Если 14-я версия Постгреса при установке инициализировала кластер не с той локалью, которую задавали в настройках (проверить это можно запросом show lc_collate;), то остановим сервер, удалим данные (тут будьте остарожны, чтобы не удалить важные данные, если у вас уже был Постгрес другой версии) и заново проинициализируем кластер с конкретной локалью:

# systemctl stop postgrespro-1c-14
# rm -rf /var/lib/pgpro/1c-14/data/*
# /opt/pgpro/1c-14/bin/pg-setup initdb --locale=ru_RU.UTF-8

Запустим сервер и проверим состояние службы (должна быть в состоянии active):

# systemctl start postgrespro-1c-14
$ systemctl status postgrespro-1c-14

Меняем пароль учетной записи psql «postgres», созданной по умолчанию:

$ sudo -u postgres psql
postgres=# \password

и вводим новый пароль.

Если необходимо предоставить разрешения для подключения к серверу PostgreSQL с других хостов, то для этого необходимо внести изменения в файлы postgresql.conf и pg_hba.conf . Найти их местоположение можно через следующие запросы:

postgres=# show config_file;
postgres=# show hba_file;

В первом файле нужно изменить (или добавить) параметр с необходимым значением, наподобие:

    listen_addresses = ‘*’

Во втором файле — наподобие:

    host    all    all    192.168.1.0/24    md5

Затем выходим из консоли управления psql:

postgres=# \q

И перезагружаем сервер для применения настроек первого конфигурационного файла:

# systemctl restart postgrespro-1c-14

На этом этапе можно создать клиент-серверную версию демонстрационной базы от 1с с именем demo

а) перейдем в каталог платформы:

$ cd /opt/1cv8/x86_64/8.3.22.1750

б) запустим кластер серверов:

$ ./ras --daemon cluster

в) прочитаем инфу о кластере:

$ ./rac cluster list

г) добавим администратора кластера (CLUSTER_UID — идентификатор кластера с предыдущего шага):

$ ./rac cluster admin --cluster=CLUSTER_UID register --name=admin --pwd=SECRET_PASSWORD_CLUSTER --auth=pwd

д) добавим базу:

$ ./rac infobase create --cluster=CLUSTER_UID --cluster-user=admin --cluster-pwd=SECRET_PASSWORD_CLUSTER --create-database --name=demo --descr=MyTestBaseOnLinuxPower --dbms=PostgreSQL --db-server=localhost --db-name=demo --locale=ru --db-user=postgres --db-pwd=SECRET_PASSWORD_PGSQL --license-distribution=allow --scheduled-jobs-deny=on
$ ./rac infobase --cluster=CLUSTER_UID --cluster-user=admin --cluster-pwd=SECRET_PASSWORD_CLUSTER summary list

4) Установка Apache

# apt install -y apache2

Проверим состояние службы (должна быть в состоянии active):

$ systemctl status apache2

Создадим папку для vrd-файла:

# mkdir -p /var/www/1c/demo

Создадим файл конфигурации apache:

# touch /etc/apache2/conf-available/demo.conf

Переходим в каталог платформы:

$ cd /opt/1cv8/x86_64/8.3.22.1750
# ./webinst -apache24 -wsdir demo -dir '/var/www/1c/demo' -connstr 'Srvr="localhost";Ref="demo";' -confPath /etc/apache2/conf-available/demo.conf

Перезагружаем настройки веб-сервера:

# systemctl reload apache2

Подключаем демо конфигурацию:

# a2enconf demo

Еще раз перезагружаем настройки веб-сервера:

# systemctl reload apache2

Теперь можно открыть конфигурацию в веб-браузере по её URL: 

На этом этапе окружение готово и его можно применять в целях тестирования (либо использовать в небольшой конторе, тем самым сэкономив на лицензиях забугорных товарищей 😉 ).

Методика сборки дистрибутива СУБД PostgreSQL 9. 6 c патчами для работы с 1С

Готовые пакеты с применением всех патчей публикуются на сайте фирмы «1С» в составе релиза каждой версии СУБД «Postgres».

Данная методика предназначена для тех, кто хочет применить патчи выборочно либо внести другие изменения в исходный код Postgres, но при этом собрать версию для работы с платформой 1С:Предприятие.

— для Linux

Данная версия поддерживает дистрибутивы: RPM — CentOS 7 и Redhat 7, Debian — Ubuntu 16.04.  

Для корректной сборки и установки необходимо наличие дополнительных модулей и библиотек:

  • plperl
  • plpython
  • plpython3
  • pltcl
  • test
  • devel
  • docs
  • libicu55
  • postgresql-common
  • libicu-dev
  • readline
  • libtermcap
  • krb5-libs
  • openssl
  • libicu50
  • libicu-devel (для целей сборки)

— для Windows

Оцените статью
Хостинги