Путь юниксоида

Блог посвященный UNIX-подобным операционным системам.

1С:Предприятие 8.3 + PostgreSQL 9.4 на базе Debian 8 «Jessie»

10 Ноября 2015, 16:33, Вт | Комментарии

Debian + 1C + PostgreSQL

В конце мая 2013 года компания 1С представила первый стабильный релиз платформы 1С:Предприятие версии 8.3. Главная особенность ветки 8.3 - это выпуск нативного клиента под *nix-подобные операционные системы. И вот спустя два года я решил написать новую статью посвященную этой теме. Я помню, что большая часть тех, кому была интересна моя прошлая статья просили и дальше брать в основу Ubuntu. Тем не менее, я решил взять за основу Debian 8 «Jessie». Основная причина в том, что производительность серверов 1С:Предприятие на Ubuntu оставляет желать лучшего. В то время как Debian и CentOS показывают более высокую производительность (CentOS даже опережает Debian, но я постараюсь исправить это положение). Сравнительные таблицы производительности серверов 1С:Предприятие вы можете поискать в интернете. Сам я пока ничего толкового не нашел.

Содержание

  1. Предисловие.
  2. Подготовка сервера.
  3. Установка PostgreSQL 9.4.
  4. Установка сервера 1С:Предприятие 8.3.
  5. Установка драйвера для аппаратной лицензии 1С (HASP).
  6. Установка клиента 1С:Предприятие 8.3.
  7. Публикация ИБ на веб-сервере Apache 2.4.
  8. Послесловие.

Предисловие.

Новичкам в *nix рекомендую выполнять установку по порядку и согласно инструкции. Статья специально разбита на главы, чтобы читатели могли пошагово проходить процесс установки. Вопросы любителей сделать «по своему» в большинстве своем будут проигнорированы. Если же вы всё делали согласно статье, но тем не менее у вас возникла проблема, внимательно проверьте все свои действия. Скорее всего, вы допустили ошибку. В случае если проверка не выявила ошибок, то вы можете описать возникую проблему в комментариях или в теме на нашем форуме, где форумчане постараются вам помочь. При этом рекомендую подробно описывать возникшую у вас проблему.

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

Основное отличие Debian от Ubuntu с которым очень часто сталкиваются пользователи Ubuntu, это отсутствие в стандартной конфигурации команды повышения привилегий sudo. Операции требующие прав root, выполняются от суперпользователя root. Тем же кто не хочет изменять своей привычке работать с sudo, достаточно при установке ОС не задавать пароль суперпользователю root и пакет sudo будет установлен и настроен. Для наглядности, перед каждой командой будет указан определенный символ, если это # - значит команда выполняется от имени суперпользователя root, если символ $ - то команда выполняется от имени текущего пользователя.

1. Итак у вас имеется установленный Debian 8. Если установка только предстоит, рекомендую выбрать пункты:

  • Сервер SSH
  • Стандартные системные утилиты

Как это указано на скриншоте:

Компоненты сервера

Остальные пункты на ваше усмотрение.

2. Сразу же поставим последние обновления, предварительно получив права root:

1
2
3
4
$ su
# apt-get update
# apt-get upgrade
# apt-get dist-upgrade

3. Архивы с установочными пакетами можно скачать из интернета сразу на сервер или скопировать заранее скачанные установочные пакеты в расшаренный каталог samba. Предположу, что samba настроена не у всех, потому воспользуемся USB-накопителем (флешкой). Создаем в корне флешки каталоги:

1
2
3
postgre
hasp

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

4. Создаем директорию, к которой будем монтировать флешку:

1
# mkdir /mnt/1cinstall

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

1
2
3
4
5
6
7
8
9
10
11
# fdisk -l

Disk /dev/sdb: 14,9 GiB, 16013852672 bytes, 31277056 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xcad4ebea

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb4  *       63 31277055 31276993 14,9G  7 HPFS/NTFS/exFAT

У меня это sdb4, теперь монтируем флешку сразу в каталог 1сinstall:

1
# mount /dev/sdb4 /mnt/1cinstall

6. Проверяем что намонтировали:

1
# ls -l /mnt/1cinstall

Т.к. на моей флешке ничего не было кроме папок с установочными пакетами, отобразились только они:

1
2
3
postgres
hasp

ПРИМЕЧАНИЕ! Если вы ставите 1С:Предприятие на удаленную машину, то для передачи файлов можете воспользоваться утилитой SCP, которая входит в состав пакета openssh-client.

Установка PostgreSQL 9.4.

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

1. Для начала надо установить необходимые локали. Это en_US.UTF-8 и ru_RU.UTF-8. При этом локаль ru_RU.UTF-8 должна быть выбрана по умолчанию. Отредактировать список локалей можно командой:

1
# dpkg-reconfigure locales

2. Затем надо установить зависимости:

1
# apt-get install ssl-cert libossp-uuid16 libxslt1.1

3. К сожалению, мейнтейнеры работающие на 1С, не следят за порядком в зависимостях своих пакетов. По этой простой причине, нам надо скачать и установить пакет libicu48:

1
2
# wget http://ftp.ru.debian.org/debian/pool/main/i/icu/libicu48_4.8.1.1-12+deb7u3_amd64.deb
# dpkg -i libicu48*.deb

4. Так же необходимо увеличить максимальный размер сегмента памяти до 64 Мб:

1
# echo kernel.shmmax = `echo 64*1024*1024 | bc` >> /etc/sysctl.conf

Дабы необходимые изменения вступили в силу, вводим:

1
# sysctl -p

Тут товарищ Vasiliy P. Melnik в своем комментарии пишет, что в данной процедуре необходимости нет. Я его утверждение не проверял, но вы можете попробовать пропустить 4 пункт. А если всё таки процедура потребуется, вы можете выполнить её позже.

5. В этой статье я решил использовать версию PostgreSQL от 1С. Переходим в каталог с пакетами PostgreSQL:

1
# cd /mnt/1cinstall/postgres

Проверяем что есть в каталоге:

1
2
3
4
5
6
7
8
9
# ls -l
итого 5424
drwxr-xr-x 2 nihi1ist nihi1ist    4096 окт  6 09:50 addons
-rwxr-xr-x 1 nihi1ist nihi1ist  120250 июн  2 12:41 libpq5_9.4.2-1.1C_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist 3657036 июн  2 12:42 postgresql-9.4_9.4.2-1.1C_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist 1069692 июн  2 12:42 postgresql-client-9.4_9.4.2-1.1C_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist   72172 авг 11 19:47 postgresql-client-common_154.1.1C_all.deb
-rwxr-xr-x 1 nihi1ist nihi1ist  163684 авг 11 19:47 postgresql-common_154.1.1C_all.deb
-rwxr-xr-x 1 nihi1ist nihi1ist  457782 июн  2 12:42 postgresql-contrib-9.4_9.4.2-1.1C_amd64.deb

Всего 6 пакетов, которые и нужно установить. В каталоге addons, находятся дополнительные пакеты, их я ставить не буду.

1
# dpkg -i *.deb

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

1
# service postgresql status

Если пакеты были установлены правильно, то вы получите примерно следующее сообщение (выхлоп):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
● postgresql.service - LSB: PostgreSQL RDBMS server
   Loaded: loaded (/etc/init.d/postgresql)
   Active: active (running) since Вт 2015-11-10 20:52:32 ALMT; 16s ago
  Process: 14225 ExecStop=/etc/init.d/postgresql stop (code=exited, status=0/SUCCESS)
  Process: 14274 ExecReload=/etc/init.d/postgresql reload (code=exited, status=0/SUCCESS)
  Process: 14235 ExecStart=/etc/init.d/postgresql start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/postgresql.service
           ├─14249 /usr/lib/postgresql/9.4/bin/postgres -D /var/lib/postgresql/9.4/main -c config_file=/etc/postgresql/9.4/main/postgresql...
           ├─14251 postgres: checkpointer process   
           ├─14252 postgres: writer process   
           ├─14253 postgres: wal writer process   
           ├─14254 postgres: autovacuum launcher process   
           └─14255 postgres: stats collector process   

ноя 10 20:52:32 as1 postgresql[14235]: Starting PostgreSQL 9.4 database server: main.

Если же вы получите сообщение похожее на это:

1
2
3
4
5
● postgresql.service - LSB: PostgreSQL RDBMS server
   Loaded: loaded (/etc/init.d/postgresql)
   Active: active (exited) since Вт 2015-11-10 20:28:40 ALMT; 10min ago

ноя 10 20:28:40 as1 postgresql[11850]: No PostgreSQL clusters exist; see "man pg_createcluster" ... (warning).

Нас интересует последняя строчка, где сообщается, что кластер PostgreSQL не обнаружен. Чтобы исправить эту ситуацию, достаточно просто перезапустить сервис PostgreSQL:

1
# service postgresql restart

После чего снова проверьте статус сервиса. В итоге вы должны получить что-то похожее на первое сообщение.

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

1
syntax error at or near "SECOND" at character 127

или

1
syntax error at or near "SECOND" at character 227

Чтобы избежать вышеуказанных ошибок нужно отредактировать настройки PostgreSQL:

1
# vim /etc/postgresql/9.4/main/postgresql.conf

Приведя нижеуказанные параметры к следующему виду:

1
2
3
backslash_quote = on
escape_string_warning = off
standard_conforming_strings = off

Обновим конфигурацию, не перезапуская сервис:

1
# service postgresql reload

7. Зададим пароль внутреннему пользователю PostgreSQL, предварительно авторизировавшись под системным пользователем postgres. Итак, авторизация:

1
# su postgres

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

1
# cd

Смена пароля у внутреннего пользователя PostgreSQL:

1
$ psql -U postgres -c "alter user postgres with password '123456';"

Где -U postgres - системный пользователь от имени которого будет запущен psql, user postgres - внутренний пользователь БД, ну а 123456 - произвольный пароль который будет задан внутреннему пользователю БД.

Если смена пароля прошла успешно, вы должны получить сообщение:

1
ALTER ROLE

Выход из окружения системного пользователя postgres:

1
$ exit

8. Напоследок зафиксируем пакеты PostgreSQL, чтобы они не обновлялись из стандартных репозиториев:

1
# apt-mark hold libpq5 postgresql-9.4 postgresql-client-9.4 postgresql-client-common postgresql-common postgresql-contrib-9.4

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

1
2
3
4
5
6
libpq5 помечен как зафиксированный.
postgresql-9.4 помечен как зафиксированный.
postgresql-client-9.4 помечен как зафиксированный.
postgresql-client-common помечен как зафиксированный.
postgresql-common помечен как зафиксированный.
postgresql-contrib-9.4 помечен как зафиксированный.

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

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

Теперь нам предстоит установка сервера 1С:Предприятие. Как и в случае с PostgreSQL нам предстоит ряд подготовительных работ необходимых для штатного функционирования сервера 1С:Предприятие.

1. Переходим в из каталога postgres в каталог 1c:

1
# cd ../1c

2. Устанавливаем дополнительные пакеты, которые необходимы для работы сервера:

1
# apt-get install imagemagick libglib2.0-0 libgsf-1-114 ttf-mscorefonts-installer t1utils unixodbc --no-install-recommends

3. Так как я не нашел достойной альтернативы пакету ttf2pt1, который не тянет кучу зависимостей. То я буду ставить его. В репозиториях его нету, скачаем из архива Debian:

1
# wget http://archive.debian.org/debian/pool/main/t/ttf2pt1/ttf2pt1_3.4.4-1.4_amd64.deb

Докачиваем libt1-5 от которого зависит ttf2pt1:

1
# wget http://ftp.ru.debian.org/debian/pool/main/t/t1lib/libt1-5_5.1.2-3.6_amd64.deb

Устанавливаем пакеты:

1
# dpkg -i ttf2pt1*.deb libt1*.deb

Кстати, жду предложений по возможной альтернативе пакету ttf2pt1.

4. Посмотрим, какие пакеты есть у нас в каталоге:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# ls -l
итого 628420
-rwxrwxrwx 1 nihi1ist nihi1ist 206202908 ноя 19 05:45 1c-enterprise83-client_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  19879626 ноя 19 05:45 1c-enterprise83-client-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  33830518 ноя 19 05:45 1c-enterprise83-common_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist   1607830 ноя 19 05:45 1c-enterprise83-common-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist 174945770 ноя 19 05:45 1c-enterprise83-server_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  60668720 ноя 19 05:45 1c-enterprise83-server-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist 135750258 ноя 19 05:45 1c-enterprise83-thin-client_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist   9980106 ноя 19 05:45 1c-enterprise83-thin-client-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist    190046 ноя 19 05:45 1c-enterprise83-ws_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist     11986 ноя 19 05:46 1c-enterprise83-ws-nls_8.3.7-1776_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist    173740 фев 24  2013 libt1-5_5.1.2-3.6_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist    236970 июн  8  2008 ttf2pt1_3.4.4-1.4_amd64.deb

Всего 8 пакетов, из которых нам для функционирования сервера 1С:Предприятия необходимы 3 пакета: 1c-enterprise83-common, 1c-enterprise83-server, 1c-enterprise83-ws.

Небольшая таблица с пояснениями по назначению пакетов:
Название пакета Описание пакета
1c_enterprise83-client… Компоненты клиента 1С Предприятие 8.3 для Linux
1c_enterprise83-thin-client… Компоненты тонкого клиента 1С Предприятие 8.3 для Linux
1c_enterprise83-common… Общие компоненты 1С Предприятие 8.3 для Linux
1c_enterprise83-server… Сервер 1С Предприятие 8.2 для Linux
1c_enterprise83-ws… Компоненты интернет-сервисов 1С Предприятие 8.3 для Linux
1c_enterprise83-…-nls… Компоненты необходимые для ОС не поддерживающих кириллическую кодировку

 

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

1
# dpkg -i 1c-enterprise83-common_8*.deb 1c-enterprise83-server_8*.deb 1c-enterprise83-ws_8.3*.deb

6. Даем пользователю usr1cv8 и группе grp1cv8 права на установочную директорию 1С:Предприятия:

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

7. В выхлопе установщика вы можете заметить предупреждение:

1
2
3
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'K01srv1cv83' missing LSB tags and overrides
insserv: warning: script 'srv1cv83' missing LSB tags and overrides

Начиная с версий 8.3.7, данная проблема исправлена. Потому, если вышеуказанного сообщения вы не получали, можете пропустить пункты 8 и 9.

8. Сообщение описанное в пункте 7 мы получаем из-за отсутствия в скрипте запуска LSB-тегов. Ошибка не критична и никак не повлияет на работу сервера 1С:Предприятие. Но её легко можно решить, для этого добавим LSB-теги в сценарий сервиса 1С:Предприятие:

1
# vim /etc/init.d/srv1cv83

Находим строки:

#!/bin/bash
#------------------------------------------------------------
# 1C:Enterprise server configuration parameters
#------------------------------------------------------------

# 1C:Enterprise server keytab file.

Приводим к следующему виду:

#!/bin/bash
#------------------------------------------------------------
# 1C:Enterprise server configuration parameters
#------------------------------------------------------------

### BEGIN INIT INFO
# Provides:          srv1cv83
# Required-Start:    $remote_fs $network $syslog $named
# Required-Stop:     $remote_fs $network $syslog $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Description:       1C:Enterprise 83 server.
### END INIT INFO

# 1C:Enterprise server keytab file.

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

1
# systemctl daemon-reload

9. Перезапускаем службу сервера 1С:Предприятие:

1
# service srv1cv83 restart

10. Проверяем запускаются ли при старте системы сервер 1С:Предприятие:

1
# netstat -atn|grep 0.0.0.0:15

Вы должны получить примерно такое сообщение:

1
2
3
tcp        0      0 0.0.0.0:1560            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:1540            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:1541            0.0.0.0:*               LISTEN

11. Так же для профилактики можно проверить, все ли процессы сервера запущены:

1
# ps aux|grep 1c

От имени пользователя usr1cv8 должно быть запущено три процесса: ragent, rmngr и rphost. После имен процессов идут номера портов, через которые они работают:

1
2
3
4
usr1cv8  16832  0.3  1.8 357780 35668 ?        Ssl  21:39   0:01 /opt/1C/v8.3/x86_64/ragent -daemon
usr1cv8  16835  0.8  5.4 955616 104104 ?       Sl   21:39   0:04 /opt/1C/v8.3/x86_64/rmngr -port 1541 -host as1 -range 1560:1591 -clstid 96f2358c-87be-11e5-049f-080027e1f738
usr1cv8  16862  0.3 10.6 848588 204580 ?       Sl   21:39   0:01 /opt/1C/v8.3/x86_64/rphost -range 1560:1591 -reghost as1 -regport 1541 -pid 97c8c4c6-87be-11e5-049f-080027e1f738
root     16940  0.0  0.1  13968  2220 pts/0    S+   21:48   0:00 grep 1c

Установка драйвера для аппаратной лицензии 1С (HASP).

Большая часть новичков впервые столкнувшиеся с процессом установки 1С:Предприятие не могут понять о какой лицензии, ключе, HASP идет речь. Итак, лицензия 1С необходима для запуска продуктов 1С:Предприятие. Лицензии 1С можно разделить на аппаратные и программные. Мы рассмотрим аппаратную лицензию (USB-токен)). Аппаратные ключи 1С делятся на 3 вида и их можно отличить по цвету:

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

Клиентское приложение допускает использование следующих ключей HASP:

  • локальный клиентский ключ серии ORGL8 на 1 пользователя,
  • сетевой клиентский ключ серии ORGL8 на 5, 10, 20, 50, и 100 пользователей,
  • сетевой клиентский ключ серии ORGLА на 300 пользователей,
  • сетевой клиентский ключ серии ORGLВ на 500 пользователей.

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

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

1. Как вы помните, всё необходимое я уже скачал, потому просто переходим из каталога , в каталог hasp:

1
# cd ../hasp

Проверим, что есть в каталоге:

1
2
3
4
# ls -l
итого 2872
-rw-r--r-- 1 nihi1ist nihi1ist 2918898 авг 26 14:08 aksusbd_7.40-1_i386.deb
-rw-r--r-- 1 nihi1ist nihi1ist   16851 авг 26 14:08 readme.html

Установочный пакет есть, осталось установить его:

1
# dpkg -i aksusbd*.deb

2. После установки сервис не запустился, запустим его:

1
# service aksusbd start

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

1
# service aksusbd status

Вы должны получить сообщение:

1
2
3
4
5
6
7
8
● aksusbd.service - LSB: Sentinel LDK RTE
   Loaded: loaded (/etc/init.d/aksusbd)
   Active: active (exited) since Чт 2015-12-03 19:37:12 ALMT; 10s ago
  Process: 3848 ExecStart=/etc/init.d/aksusbd start (code=exited, status=0/SUCCESS)

дек 03 19:37:12 hst1 aksusbd[3848]: Starting AKSUSB daemon: .
дек 03 19:37:12 hst1 aksusbd[3848]: Starting WINEHASP daemon: .
дек 03 19:37:12 hst1 aksusbd[3848]: Starting HASPLM daemon: .

ПРЕДУПРЕЖДЕНИЕ! Для 64-битного сервера 1С:Предприятие, нужен 64-битный серверный HASP-ключ. 32-битный серверный HASP-ключ с 64-битным сервером 1С:Предприятие работать не будет!

ПРИМЕЧАНИЕ! Сервер 1С:Предприятие под *nix-подобные операционные системы не требует наличия серверного ключа, если число пользользователей не превышает 12. В этом случае требуется наличие только клиентских лицензий. Тем не менее, согласно правилам лицензирования, организация должна приобрести серверный ключ.

На этом установка драйвера закончена.

Установка клиента 1С:Предприятие 8.3.

Установка клиента.

Итак, дано: рабочая станция с Debian 8 «Jessie» + DE Cinnamon на борту. Я предпочел Cinnamon, но каждый может выбрать окружение (DE) себе по вкусу. Можно приступить к установке клиента 1С:Предприятие.

1. По уже заведенной традиции, устанавливаем дополнительные пакеты, необходимые для работы 1С:Предприятие:

1
# apt-get install libwebkitgtk-1.0-0 imagemagick libglib2.0-0 libgsf-1-114 ttf-mscorefonts-installer t1utils unixodbc --no-install-recommends

2. На памятной флешке, имеются также пакеты клиента. Подключим флешку как указано в пунктах 4 и 5, главы Подготовка сервера и сразу перейдем в каталог с пакетами 1С:Предприятие:

1
# cd /mnt/1cinstall/1c

Посмотрим, что имеется в каталоге:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# ls -l
итого 628420
-rwxrwxrwx 1 nihi1ist nihi1ist 206202908 ноя 19 05:45 1c-enterprise83-client_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  19879626 ноя 19 05:45 1c-enterprise83-client-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  33830518 ноя 19 05:45 1c-enterprise83-common_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist   1607830 ноя 19 05:45 1c-enterprise83-common-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist 174945770 ноя 19 05:45 1c-enterprise83-server_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist  60668720 ноя 19 05:45 1c-enterprise83-server-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist 135750258 ноя 19 05:45 1c-enterprise83-thin-client_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist   9980106 ноя 19 05:45 1c-enterprise83-thin-client-nls_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist    190046 ноя 19 05:45 1c-enterprise83-ws_8.3.7-1776_amd64.deb
-rwxrwxrwx 1 nihi1ist nihi1ist     11986 ноя 19 05:46 1c-enterprise83-ws-nls_8.3.7-1776_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist    173740 фев 24  2013 libt1-5_5.1.2-3.6_amd64.deb
-rwxr-xr-x 1 nihi1ist nihi1ist    236970 июн  8  2008 ttf2pt1_3.4.4-1.4_amd64.deb

3. Есть два варианта установки клиента. Первый вариант - установка полноценного клиента (включает толстый и тонкий клиенты), второй вариант - установка тонкого клиента. В случае с установкой полноценного клиента, необходимо также устанавливать и серверную часть.

3.1. Сначала рассмотрим установку полноценного клиента:

1
# dpkg -i 1c-enterprise83-client_8*.deb 1c-enterprise83-common_8*.deb 1c-enterprise83-server_8*.deb ttf2pt1*.deb libt1*.deb

После чего надо выполнить процедуры указанные в пунктах с 6 по 9, главы Установка сервера 1С:Предприятие 8.3.

3.2. Тонкий клиент, можно устанавливать на те машины, где не планируется использование толстого клиента. Преимущество тонкого клиента, это отсутствие зависимостей от компонентов сервера 1С:Предприятие, а также возможность работать через интернет. Итак, установка тонкого клиента:

1
# dpkg -i 1c-enterprise83-thin-client_8*.deb

В каких случаях нам необходим толстый клиент?
- Работа с конфигуратором,
- Создание информационных баз,
- Проведение объемных вычислений (в случае толстого клиента, все вычисления проводятся на стороне клиента).

Подробнее о тонких и толстых клиентах можно почитать здесь.

4. Теперь нам необходимо выбрать каким способом мы будем взаимодействовать с сервером. В зависимости от обстоятельств и предпочтений, вы можете установить DNS-сервер, или прописывать имя сервера на каждой клиентской машине вручную:

1
# vim /etc/hosts

Надо добавить строку:

1
192.168.1.1      as1     as1.nixway.loc

Где 192.168.1.1 - IP-адрес сервера, as1 - имя сервера, as1.nixway.loc - имя сервера в локальном домене, его указывать не обязательно.

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

1
# ping -c4 as1.nixway.loc

Вы должны получить примерно такой ответ:

1
2
3
4
5
6
7
8
9
PING as1.nixway.loc (192.168.56.101) 56(84) bytes of data.                                                                                   
64 bytes from as1.nixway.loc (192.168.56.101): icmp_seq=1 ttl=64 time=0.212 ms
64 bytes from as1.nixway.loc (192.168.56.101): icmp_seq=2 ttl=64 time=0.309 ms
64 bytes from as1.nixway.loc (192.168.56.101): icmp_seq=3 ttl=64 time=0.315 ms
64 bytes from as1.nixway.loc (192.168.56.101): icmp_seq=4 ttl=64 time=0.258 ms

--- as1.nixway.loc ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3000ms
rtt min/avg/max/mdev = 0.212/0.273/0.315/0.045 ms

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

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

Для начала можно (но совсем необязательно) установить демонстрационную конфигурацию. Дабы продемострировать работую так называемого «Управляемого приложения». Демонстрационная конфигурация идет в комплекте с 1С:Предприятие 8.3. Установщик конфигурации представлен в виде простого скрипта. Потому, описывать процесс установки я не буду, просто выложу несколько скриншотов процесса установки:

Установка демо конфигурации

1. Создание информационных баз на *nix-подобных ОС должно проходить из под толстого клиента. В противном случае вы рискуете получить ошибку:

Создание ИБ. Ошибка

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

Создание ИБ. Ошибка

ИБ создается, но 1С:Предприятие некорректно обрабатывает её создание. В этом случае достаточно просто добавить ИБ в список:

Создание ИБ. Добавление существующей ИБ

Вышеуказанные ошибки будут рассмотрены в отдельной статье.

2. При первом запуске 1С:Предприятие сразу же предлагает нам добавить информационную базу (ИБ), жмем Да:

Создание ИБ. Добавление

3. Выбираем пункт Создание новой информационной базы, жмем Далее >:

Создание ИБ. Новая

4. Выбраем шаблон конфигурации для создаваемой ИБ или же создаем ИБ без конфигурации, жмем Далее >:

Создание ИБ. Конфигурация

5. Задаем имя ИБ и выбираем пункт На сервере 1С:Предприятия, жмем Далее >:

Создание ИБ. Сервер

6. По порядку указываем: доменное имя или IP-адрес сервера 1С:Предприятие, имя ИБ, параметры соединения, тип СУБД, адрес сервера баз данных (БД), имя БД на сервере БД, имя пользователя сервера БД, пароль пользователя сервера БД, жмем Далее >:

Создание ИБ. Параметры подключения

7. Параметры запуска оставляем без изменений, жмем Готово:

Создание ИБ. Параметры запуска

8. Если вы всё сделали правильно, то через некоторое время ИБ будет создана и вы увидите её в списке:

Создание ИБ. Список ИБ

9. Теперь, когда мы создали ИБ, можно её запустить. Как вы помните, я создавал ИБ из шаблона демонстрационной конфигурации. Так выглядит рабочее окно этой конфигурации:

Режим - 1С:Предприятие

Ну и конечно же конфигуратор:

Режим - Конфигуратор

Публикация ИБ на веб-сервере Apache 2.4.

Хочу обрадовать тех, кому не хватало возможности публикации информационной базы на веб-сервере Apache. Добавление поддержки последней версии Apache, я заметил при установке 1С:Предприятие версии 8.3.8.1652. Может поддержка Apache 2.4 появилась и раньше. Но проверять мне было лень, а новостей на эту тему я не нашел. Даже на официальном сайте 1С, на данный момент устаревшая информация. Процесс публикации не изменился. Обращаю особое внимание, что процесс установки описан для Apache не ниже 2.4.

Создаем директорию для vrd-файла:

1
# mkdir -p /var/www/ib/ibname

А также файл конфигурации Apache:

1
# touch /etc/apache2/conf-available/ibname.conf

Переходим в каталог со утилитой публикации веб-клиента:

1
# cd /opt/1C/v8.3/x86_64/

Запускаем утилиту:

1
# ./webinst -apache24 -wsdir ibname -dir '/var/www/ib/ibname' -connstr 'Srvr="as1.nixway.loc";Ref="ibname";' -confPath /etc/apache2/conf-available/ibname.conf

Где /var/www/ib/ibname - директория где будет создан vrd-файл, ibname - имя ИБ, as1.nixway.loc - адрес сервера 1С:Предпрятие, а /etc/apache2/conf-available/ibname.conf - путь до конфигурационного файла Apache.

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

1
# a2enconf ibname

Перечитываем конфигурацию Apache:

1
# service apache2 reload

Если процедура публикации была проведена корректно, ИБ будет доступна по адресу:

1
http[s]://server_ip|server_name/ibname

Режим - Веб-клиент

Послесловие

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

Напоминаю копипастерам, использование прямой ссылки на оригинальную статью обязательно.

Статья обновлена 10 августа 2016 года.

Комментарии