Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.


Информация
iconfalse

Оглавление



Информация

Данная статья применима к:

  • ОС ОН Орёл 2.12
  • ОС СН Смоленск 1.6


Информация
iconfalse

http://1c.ru/ - оф. сайт компании 1C


Подготовка сети и сервера

В сети желательно настроить разрешение имен (см. DNS-сервер BIND9), позволяющее получать IP-адрес сервера. Если сетевая служба разрешения имен не используется, то в файле /etc/hosts  должно быть указано соответствие IP-адреса и имени сервера. Например, для сервера с полным именем 1c-astra16.example.ru и IP-адресом 192.168.122.159 должна быть указана строка вида:

Command
Titlecat /etc/hosts

127.0.0.1           localhost
192.168.122.159          1c-astra16.example.ru    1c-astra16

Сервер не обязательно дожен иметь полное доменное имя, в этом случае в файле /etc/hosts достаточно указать одно краткое имя, например:

Command
Titlecat /etc/hostname

192.168.122.159          1c-astra16

Установка и настройка СУБД PostgreSQL

Устанавить пакеты СУБД PostgreSQL:

Command
sudo apt install postgresql-astra postgresql-contrib

Добавить в файл /etc/postgresql/9.6/main/pg_hba.conf строку, разрешающую подключение из сети, в которую входит сервер. Например, для сети 192.168.122.0/24:

Блок кода
# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
host    all             all             192.168.122.0/24            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5


Отредактировать файл postgresql.conf:

Блок кода
languagecoldfusion
themeMidnight
title/etc/postgresql/9.6/main/postgresql.conf
# - Connection Settings -
listen_addresses = '*'          # what IP address(es) to listen on;
#
#
backslash_quote = safe_encoding
escape_string_warning = off
standard_conforming_strings = off

Выполнить:

Command

sudo systemctl restart postgresql

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

Command

sudo su postgres
cd ~
psql -c "ALTER ROLE postgres WITH PASSWORD '12345678';"
exit

Установка 1C Enterprise

Скачать  с сайта 1C файл дистрибутива 1C-enterprise, если файл представилен в сиде архива - распаковать его,  и выполнить установку:

Command

sudo apt install ./1c-enterprise83*.deb

Предупреждение "N: Download is performed unsandboxed as root as file" игнорировать.

Запуск 1C

Command

sudo /etc/init.d/srv1cv83 start

Предупреждение
titleВнимание!

При установке "по умолчанию" автоматический запуск службы не работает. Порядок настройки автоматического запуска с использованием возможностей systemd см. ниже.

Проверим, запустились ли процессы 1C:

Command
Titleps ax | grep 1C

2119 ? Ssl 0:00 /opt/1C/v8.3/x86_64/ragent -daemon
2127 ? Sl 0:00 /opt/1C/v8.3/x86_64/rmngr -port 1541 -host orel212 -range 1560:1591 -clstid 3cd06a02-ff97-11e8-d49b-525400698ff9
2168 ? Sl 0:00 /opt/1C/v8.3/x86_64/rphost -range 1560:1591 -reghost orel212 -regport 1541 -pid 3d2403c4-ff97-11e8-d49b-525400698f

Если не запущено ни одного процесса, или запущен только один процесс, удалите директорию /home/usr1cv8/.1C и перезапустите службу.

Действия после установки 1C


Разрешить автоматический запуск службы после перезагрузки
sudo systemctl enable srv1cv83


Установка клиента 1С

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

  1. Скачать установочные файлы;
  2. Если файлв представлены в виде архива - распаковать архив;
  3. Выполнить установку командой apt, указав файл с нужной версией клиента, например :

    Command
    sudo apt -y install ./1c-enterprise-8.3.18.1334-client_8.3.18-1334_amd64.deb


Добавление информационной базы

Запустим 1C: 

 

Нажимаем "Да"

 

Создание новой информационной базы

Создание без конфигурации для разработки новой конфигурации и т.п.

Вводим название информационной базы и выбираем тип расположения - "На сервере 1C:Предприятия"

  • Кластер серверов 1C: Предприятия - Адрес сервера, где установлена 1C. У нас это "1c-astra16.example.ru";
  • Имя информационной базы в кластере: Так будет называться инфобаза в кластере. (любое);
  • Тип СУБД - POstgreSQL;
  • Сервер баз данных: в данном примере служба СУБД PostgreSQL работает на том же сервере, поэтому  имя сервера такое же: "1c-astra16.example.ru";
  • Имя базы данных  - имя БД в СУБД PostgreSQL (любое);
  • Пользователь базы данных - postgres;
  • Пароль - пароль пользователя postgres.

Выбираем параметры и режим запуска и нажимаем готово!

Можно приступать к работе!

Запуск 1C через systemd

Для настройки автоматического запуска службы с использованием возможностей systemd следует:
  • Создать два файла (юнита) с параметрами запуска. Содержимое юнитов приведено ниже. Юниты должны размещаться в каталоге /lib/systemd/system/, и иметь "расширение имени" service например:
    1. /lib/systemd/system/1c-ras.service - юнит для запуска сервера администрировнаия платформы 1С:Предприятие;
    2. /lib/systemd/system/1c-es.service - юнит для запуска агента и главного менеджера кластера серверов.
  • Назначить права доступа на созданные файлы:

    Command

    sudo chown root:root /lib/systemd/system/1c-ras.service /lib/systemd/system/1c-es.service
    sudo chmod 644 /lib/systemd/system/1c-ras.service /lib/systemd/system/1c-es.service

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

    Command

    sudo systemctl start 1c-ras 1c-es
    sudo systemctl status 1c-ras 1c-es

    Разрешить работу служб от имени служебного пользователя 1С (имя служебного пользователя - usr1cv8), для чего в файле /etc/systemd/logind.conf раскомментировать строку с параметром KillExcludeUsers, и привести ее к виду:

    Блок кода
    KillExcludeUsers=root usr1cv8

    Включить автоматический запуск служб 1C при старте системы:

    Command
    sudo systemctl enable 1c-ras 1c-es

    В дальнейшем управлять службами можно будет с помощью стандартных команд (подробнее см. man systemctl):

    Command

    sudo systemctl stop 1c-ras 1c-es
    sudo systemctl restart 1c-ras 1c-es

    Юнит запуска сервера администрирования платформы 1C:Предприятие

    Блок кода
    title/lib/systemd/system/1c-ras.service
    [Unit]
    Description=1C:Remote Administration Server [2]
    After=network.target remote-fs.target nss-lookup.target
    
    [Service]
    Type=simple
    
    ExecStart=/opt/1C/v8.3/x86_64/ras cluster --port=8007 localhost:8000
    
    User=usr1cv8
    Group=grp1cv8
    WorkingDirectory=/home/usr1cv8
    EnvironmentFile=/home/usr1cv8/.profile
    UMask=0002
    PermissionsStartOnly=true
    LimitCORE=infinity
    LimitNOFILE=16384
    
    [Install]
    WantedBy=multi-user.target
    Юнит запуска агента и главного менеджера кластера серверов Блок кода
    title/lib/systemd/system/1c-es.service
    [Unit] Description=1C:Enterprise Server [1] After=network.target remote-fs.target nss-lookup.target 1c-ras.service [Service] Type=forking ExecStart=/opt/1C/v8.3/x86_64/ragent -daemon -debug -port 1540 -regport 1541 -range 1560:1591 -seclev 0 User=usr1cv8 Group=grp1cv8 WorkingDirectory=/home/usr1cv8 EnvironmentFile=/home/usr1cv8/.profile UMask=0002 PermissionsStartOnly=true LimitCORE=infinity LimitNOFILE=16384 [Install] WantedBy=multi-user.target