Установка Платформы «1С:Предприятие» в ОС Linux
Перед началом установки необходимо скачать дистрибутивы, которые понадобятся в дальнейшем. В данном примере мы будем устанавливать:
- Сервер «1С:Предпритие» 64-bit версии 8.3.13.1644. Пакеты для установки доступны здесь:
- Если для сервера использоваться ключи аппаратной защиты HASP, то необходимо установить на сервер драйвер защиты HASP. Последние версии для различных операционных систем можно скачать:
Если в дальнейшем работа с сервером «1С:Предприятие» на Linux и управление будет осуществляться c других машин, необходимо убедиться в том, что ip-адрес компьютера, на котором расположен сервер, будет корректно разрешаться в его hostname. Откроем консоль сервера от имени пользователя root и получим адрес компьютера:
Имя компьютера можно получить так:
Теперь данные о соответствии ip-адреса и имени необходимо внести в файлы hosts тех машин, откуда будут устанавливаться соединения с кластером серверов:
Для Windows он расположен обычно:
В противном случае при установке клиентского соединения с рабочим процессом кластера будет возникать ошибка.
Установка платформы в Debian-системах на примере Ubuntu Server 16.04
- Откроем консоль сервера от имени пользователя root.
- Создадим директорию, куда поместим (любым удобным образом) архив с Deb-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.
Копировать в буфер обмена
- Войдем в каталог /1c/soft/1с:
Копировать в буфер обмена
Распакуем архив (при помощи команды tar xzf):
Копировать в буфер обмена
- Для установки пакетов удобнее всего воспользоваться утилитой gdebi. Если она не была ранее установлена, это можно сделать при помощи команды:
Копировать в буфер обмена
Устанавливаем сервер «1С:Предприятие»:
Последние три nls-пакета содержат языковые файлы и требуют обязательной установки только в том случае, если будут использоваться языки, отличные от русского и английского.
Установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.
- Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts:
Копировать в буфер обмена
Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:
Проверить статус работы можно при помощи команды:
Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.
Проверить, запущены ли процессы кластера, можно при помощи команды:
Перейдем к установке драйвера HASP. Для данного примера скачиваем драйвер по адресу:
Для установки драйвера выполняем следующие действия:
- Создадим каталог /1c/soft/hasp:
Копировать в буфер обмена
- В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:
Копировать в буфер обмена
- Поскольку драйвер использует 32-битные библиотеки, устанавливаем их:
Копировать в буфер обмена
- Устанавливаем драйвер:
Копировать в буфер обмена
- Запускаем драйвер защиты HASP:
Копировать в буфер обмена
Проверить статус можно так:
Установка платформы в RPMS на примере CentOS 7
- Откроем консоль от имени root.
- Создадим директорию, куда поместим (любым удобным образом) архив с RPM-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.
Копировать в буфер обмена
- Перейдем в директорию /1c/soft/1с
Копировать в буфер обмена
tar xzf rpm64_8_3_13_1644.tar.gz
В данном примере будут установлены все пакеты, но, если в вашей системе не планируется использовать языки, отличные от русского и английского, nls-пакеты вы можете не устанавливать — они содержат только языковые файлы.
Для пакетов x86_64 установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.
- Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts.
- Скачиваем любым удобным образом (например, при помощи wget) файлы пакета с сервера SourceForge:
Надо скачать все .exe-файлы, кроме wd97vwr32.exe.
- Переименовываем все скачанные .exe-файлы, присвоив им расширение .zip, после чего распакуем их и удалим все, кроме имеющих расширение .ttf – это файлы шрифтов.
- Файлы шрифтов (.ttf-файлы) копируем в каталог /usr/share/fonts/truetype/
Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:
Проверить статус работы можно при помощи команды:
Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.
Проверить, запущены ли процессы кластера, можно при помощи команды:
Перейдем установке драйвера HASP. Для данного примера скачиваем драйвер по адресу :
Для установки драйвера выполняем следующие действия:
- Создадим каталог /1c/soft/hasp:
Копировать в буфер обмена
- В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:
Копировать в буфер обмена
- Поскольку драйвер использует 32-битные библиотеки, устанавливаем их:
Копировать в буфер обмена
- Устанавливаем драйвер:
Копировать в буфер обмена
- Запускаем драйвер защиты HASP:
Копировать в буфер обмена
Проверить статус можно так:
Основные проблемы и вопросы по установке Платформы «1С:Предприятие» в Linu x
1. При работе возникают ошибки «Не найдена библиотека …»
В зависимости от вашего дистрибутива Linux и функционала системы для корректной работы 1С:Предприятие вам может понадобиться дополнительно самостоятельно установить внешние библиотеки. Полный список их представлен в документации:
Обратите внимание, что в документации указано именно имя библиотеки, а не имя пакета. Имя пакета, в который она входит, может отличаться в разных дистрибутивах. В какие именно пакеты входит библиотека, обычно можно найти в репозитории для вашей ОС.
2. Как запустить сервер в режиме отладки?
Для того, чтобы на сервере была доступна отладка, необходимо запустить его в ключом –debug. Для этого сначала остановим сервер «1С:Предприятие»:
ВАЖНО! Не редактируйте параметры запуска сервера в процессе его работы, это может привести к ошибкам при его перезапуске.
Теперь необходимо отредактировать параметры его запуска в конфигурационном файле srv1cv83 (в данном примере с использованием редактора vim):
Находим в редактируемом файле строку SRV1CV8_DEBUG= , убираем в начале этой строки символ комментария # и устанавливаем значение переменной SRV1CV8_DEBUG в 1:
Сохраняем изменения и выходим из файла.
Перезапускаем сервер «1С:Предприятия 8»:
3. Где находится каталог данных кластера серверов и как его изменить?
По умолчанию каталог кластера находится в директории пользователя, от имени которого запущен сервер 1С:Предприятие — $HOMEDIR/.1cv83/1C/1Cv83, например:
Для того, чтобы изменить место изменить место расположения, необходимо, по аналогии с п. 1, изменить параметр SRV1CV8_DATA запуска в конфигурационном файле /etc/sysconfig/srv1cv83.
ВАЖНО! Не забудьте убедиться в наличии прав на директорию данных кластера у пользователя, от имени которого запущен сервер. Увидеть права можно при помощи команды:
Предоставить права можно так:
В конфигурационном файле /etc/sysconfig/srv1cv83 также задаются порты, на которых будут работать процессы кластера, и другие параметры запуска.
4. Как настроить технологический журнал сервера в Linux ?
На сервере создадим каталоги, в который будут помещаться файлы журнала:
Создадим каталог для настроек журнала /opt/1C/v8.3/x86_64/conf:
Поместим в этот каталог файл logcfg.xml со следующим (например) содержимым:
В данном случае собирается полный технологический журнал (не стоит делать так на постоянной основе в продуктиве), срок хранения файлов журналов — 24 часа, находиться они будут в директории /var/log/1c/logs.
ВАЖНО! Необходимо предоставить пользователю, от имени которого работает сервер 1С:Предприятие, права на запись в каталог логов. Например, так:
- Создадим группу пользователей grp1clogs, которой будут даны права на журнал:
Копировать в буфер обмена
- Дадим права этой группе на каталоги журнала:
Копировать в буфер обмена
Поднимаем сервер 1с с публикацией базы и веб сервисов на Linux
Сегодня я бы хотел рассказать, как поднять сервер 1с на linux debian 9 с публикацией web-сервисов.
Что такое web-сервисы 1с?
Web-сервисы — это один из механизмов платформы, используемых для интеграции с другими информационными системами. Он является средством поддержки SOA (Service-Oriented Architecture) — сервис-ориентированной архитектуры, которая является современным стандартом интеграции приложений и информационных систем. По сути — это возможность создать html страницу с данными, к которой, потом можно обратиться любым другим приложением и забрать их.
Плюсы — работает быстро (даже при достаточно большом объеме данных), относительно удобно.
Минусы — ваш програмист 1с будет много и долго на вас ворчать, пока будет писать веб-сервис для вашей базы. Штука очень своеобразная в написании.
Я не буду рассказывать как написать веб-сервис… я расскажу как его опубликовать на Linux из консоли сервера, а так же немного про установку 1с сервера на Linux.
И так, у нас есть debian 9 netinst, приступаем:
Устанавливаем PostgresPro (Прошу заметить что он не бесплатный, и распространяется, только в рамках ознакомления с возможностями):
Скажем postgresql слушать все адреса а не только localhost
Раскомментируем и поменяем какие адреса слушать:
Далее разрешим авторизоваться пользователям из нашей сети
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.188.0/24 md5
host all all 127.0.0.1/32 md5
Более подробно о различных установках Postgres для 1с можно почитать тут.
Далее ставим 1с сервер.
Заливаем на сервер архив скачанный с сайта 1с (в моем случае deb64_8_3_15_1534.tar.gz)
Теперь установим Apache2
Через консоль администрирования или через клиент 1с создаем базу и заливаем нашу конфигурацию…
Теперь публикуем базу:
переходим в папку с 1с.
Лезем в var/www/test/ и смотрим что там появилось.
Это схемы которые нужны для запуска веб-клиента 1с… теперь в нашу тестовую базу можно зайти из браузера по адресу «http ://АдресСервера/Test» (регистр важен! это же линукс) или указать в клиенте «тип расположения базы» адрес «http ://АдресСервера/Test», и клиент будет работать с опубликованной базой.
А что же на счет веб-сервисов? (в моей тестовой конфигурации их два: WebBuh для обмена данными с бухгалтерией и toplog интеграция с системой wms одноименной компании).
Что ж, добавим пару строк в наш vrd файлик…
xmlns:xs=«www.w3.org/2001/XMLSchema»
xmlns:xsi=«www.w3.org/2001/XMLSchema-instance»
base=»/TestWeb»
ib=«Srvr=IP_addres;Ref=TestWebServ»>
# Вот тут начинается код который публикует веб-сервисы
alias=»Web_buh.1cws» # Web_buh.1cws — алиас веб-сервиса в браузере
enable=»true» # дальше я думаю строки и так понятны
reuseSessions=»autouse»
sessionMaxAge=»20″
poolSize=»10″
poolTimeout=»5″/>
alias=»toplog.1cws» # toplog.1cws
enable=»true»
reuseSessions=»autouse»
sessionMaxAge=»20″
poolSize=»10″
poolTimeout=»5″/>
И теперь наш веб-сервис доступен по адресу «http ://АдресСервера/Test/Web_buh.1cws?»
Зачем надо было делать это руками?
Поскольку наш сервер без графической оболочки, запустить на нем конфигуратор — не получится, и соответственно выполнить публикацию штатными средствами. Удаленный же конфигуратор, который стоит на клиенте не публикует на сервере веб-сервисы. Поэтому нам приходится править конфиг вручную по шаблону описанному выше.