Рассматривается вариант установки 64-битного 1С Сервера 8.3.10 (на примере версии 8.3.10.2168 ), а также 64-битного PostgreSQL 9.4.2 на 64-битный Ubuntu Server 16.04. Опционально приводятся варианты настройки Timezone и синхронизации времени, установки Apache 2.4, установки OpenJDK 1.8 и включения режима отладки 1С Сервера на 64-битном Ubuntu Server 16.04.
1. Установка PostgreSQL
Устанавливаем необходимые локали и определяем локаль по-умолчанию (она должна совпадать с языком базы данных, которая будет создаваться при создании информационной базы на 1С Сервере. При не совпадении языков в процессе создания информационной базы будет выдаваться ошибка):
sudo locale-gen en_US
(создаем локаль английского языка)
sudo locale-gen ru_RU
(создаем локаль русского языка)
sudo update-locale LANG=ru_RU.UTF8
(по-умолчанию устанавливаем локаль русского языка)
sudo dpkg-reconfigure locales
(переконфигурируем локали)
Устанавливаем необходимые пакеты:
sudo apt-get install libxslt1.1 ssl-cert
Установка PostgreSQL 9.4.2-1.1C:
Скачиваем необходимую версию библиотеки libicu (например, в каталог /tmp) и устанавливаем ее:
cd /tmp
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu48_4.8.1.1-3ubuntu0.6_amd64.deb
sudo dpkg -i libicu48_4.8.1.1-3ubuntu0.6_amd64.deb
Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их именно в такой последовательности:
cd /tmp
sudo dpkg -i libpq5_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-client-common_154.1.1C_all.deb
sudo dpkg -i postgresql-common_154.1.1C_all.deb
sudo dpkg -i postgresql-client-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-contrib-9.4_9.4.2-1.1C_amd64.deb
Установка PostgreSQL 9.4.x (на момент написания статьи 9.4.6) с сайта авторов сборки PostgreSQL для 1С (большое спасибо audion за ссылку):
Добавляем репозиторий 1c.postgrespro.ru:
sudo sh -c ‘echo «deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main» > /etc/apt/sources.list.d/postgrespro-1c.list’
Импортируем ключ репозитория и обновляем список пакетов:
wget —quiet -O — http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C-92 | sudo apt-key add — && sudo apt-get update
Устанавливаем PostgreSQL:
sudo apt-get install postgresql-pro-1c-9.4
После установки любым из двух вариантов от имени суперпользователя в файле /etc/postgresql/9.4/main/pg_hba.conf строку для соединения через Unix-сокет
local all postgres peer
для пользователя postgres приводим к виду:
local all postgres trust
Для бОльшей безопасности от имени суперпользователя в файле /etc/postgresql/9.4/main/postgresql.conf строку
listen_addresses = ‘*’
приводим к виду:
listen_addresses = ‘localhost’
Это ограничит доступ к серверу базы данных PostgreSQL только внутри машины, на которой он установлен. Данное ограничение можно реальзовать только в случае, когда 1С Сервер и PostgreSQL установлены на одной машине. Если указанные сервера расположены на разных машинах, то необходимо оставить опцию listen_addresses = ‘*’ или вместо ‘*’ указать IP-адрес машины, на которой установлен 1С Сервер.
Изменяем пароль суперпользователя postgres:
psql -U postgres -d template1 -c «ALTER USER postgres PASSWORD ‘password"»
От имени суперпользователя в файле /etc/postgresql/9.4/main/pg_hba.conf все методы аутентификации устанавливаем в значение md5, например:
local all postgres md5
Перезапускаем сервис PostgreSQL:
sudo service postgresql restart
2. Установка Timezone и синхронизация времени (опционально).
При необходимости установить Timezone и синхронизировать время операционной системы, необходимо выполнить следующие действия:
— сконфигурировать часовой пояс:
sudo dpkg-reconfigure tzdata
и выбрать необходимый часовой пояс
— установить ntp-протокол и произвести синхронизацию времени:
sudo apt-get install ntp
sudo service ntp stop
sudo ntpdate -s time.nist.gov
sudo service ntp start
3. Установка 64-битного 1С Сервера 8.3.10.
Устанавливаем необходимые зависимости:
sudo apt-get install imagemagick
sudo apt-get install unixodbc
sudo apt-get install ttf-mscorefonts-installer
(в процессе установки необходимо принять условия лицензионного соглашения)
sudo apt-get install libgsf-1-114
Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их (логичной выглядит следующая последовательность установки):
cd /tmp
sudo dpkg -i 1c-enterprise83-common_8.3.10-2168_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-common-nls_8.3.10-2168_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.10-2168_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-server-nls_8.3.10-2168_amd64.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-ws_8.3.10-2168_amd64.deb
(опционально для работы веб-клиента)
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.10-2168_amd64.deb
(опционально для поддержки дополнительных языков)
Изменяем владельца каталога /opt/1C:
sudo chown -R usr1cv8:grp1cv8 /opt/1C
Запускаем 1С Сервер:
sudo service srv1cv83 start
4. Установка Apache 2.4
sudo apt-get install apache2
— проверяем версию установленного Apache:
apache2 -v
5. Установка OpenJDK 1.8 (опционально).
При необходимости запуска java-приложений (в том числе из 1С), можно установить OpenJDK 1.8 следующим образом:
— добавляем ppa-репозиторий и обновляем список пакетов:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
— устанавливаем OpenJDK:
sudo apt-get install openjdk-8-jdk
(для установки JDK)
или
sudo apt-get install openjdk-8-jre
(для установки только JRE)
— актуализируем Java-машину (если ранее уже была установлена младшая версия Java):
sudo update-alternatives —config java
— актуализируем Java-компилятор (если ранее уже была установлена младшая версия Java):
sudo update-alternatives —config javac
— проверяем установленную версию Java:
java -version
6. Включение режима отладки 1С Сервера (опционально).
Останавливаем сервис 1С Сервера:
sudo service srv1cv83 stop
От имени суперпользователя редактируем файл /etc/init.d/srv1cv83, а именно — находим следующую строку:
#SRV1CV8_DEBUG=
раскомментируем ее и присвоим значение 1 так, чтобы получилась следующая строка:
SRV1CV8_DEBUG=1
сохраняем файл /etc/init.d/srv1cv83 и запускаем сервис 1С Сервера:
sudo service srv1cv83 start
На клиентской машине в меню конфигурации «Параметры» -> «Запуск 1С:Предприятия» -> «Дополнительные» включаем следующие пункуты:
«Устанавливать режим разрешения отладки»
«Начинать отладку при запуске
7. Параметры для создания информационной базы на сервере и подключения к ней.
От имени суперпользователя необходимо отредактировать файл /etc/hosts таким образом, чтобы в нем была строка:
IP адрес машины, на которой установлен 1С Сервер hostname -f hostname, например:
(промежутки должны быть пробелами, а не табами)
На клиентской WINDOWS-машине от имени администратора в файл C:\Windows\System32\drivers\etc\hosts необходимо добавить строку, указанную выше, например:
192.168.0.111 test.example.com test
При создании информационной базы в консоли Администрирования 1С Серверов в качестве сервера базы данных желательно указывать localhost (допустимо указывать hostname машины, на которой запущен PostgreSQL и 1С Сервер, и который прописан в файле C:\Windows\System32\drivers\etc\hosts). Данная рекомендация действительна только для случая, когда 1С Сервер и PostgreSQL находятся на одной машине. В противном случае вместо localhost необходимо указывать hostname машины, на которой установлен PostgreSQL.
При подключении к созданной информационной базе в качестве кластера серверов желательно указывать hostname машины, на которой запущен 1С Сервер и который прописан в файле C:\Windows\System32\drivers\etc\hosts (для Windows-клиентской машины), а в качестве информационной базы в кластере — имя информационной базы, указанное при ее создании. Если кластер серверов запущен на не стандартных портах, то в качестве кластера серверов указать hostname:port, например srv1c:1741.
Проверяем состояние сервисов на Ubuntu-сервере:
service postgresql status
Если все ОК, то статус должен быть «online».
service srv1cv83 status
Если все ОК, то должны быть следующие статусы:
— Init script: STARTED
— Ragent RUNNING
Обновление 1C сервера.
Для обновления сервера 1C Предприятия под Ubuntu Linux. Необходимо сделать ряд операций, сначала необходимо узнать, какие пакеты ранее были установлены. Для того, что бы узнать, какие пакеты были установлены в консоле выполняем команду:
dpkg -l | more | grep 1c-enter > rem.txt
cat rem.txt
Пакеты будут отображаться в алфавитном порядке, в таком виде:
1c-enterprise83-client 8.3.10.2168 1C:Enterprise 8.3 client applications
1c-enterprise83-client-nls 8.3.10.2168 National resource files for 1C:Enterpise 8.3 client applications for Linux ii 1c-enterprise83-common 8.3.10.2168 1C:Enterprise 8.3 common components
1c-enterprise83-common-nls 8.3.10.2168 National resource files for 1C:Enterpise 8.3 common components for Linux ii 1c-enterprise83-server 8.3.10.2168 1C:Enterprise 8.3 server for Linux
1c-enterprise83-server-nls 8.3.10.2168 National resource files for 1C:Enterpise 8.3 server for Linux
1c-enterprise83-ws 8.3.10.2168 1C:Enterpise 8.3 Web-services components for Linux
1c-enterprise83-ws-nls 8.3.10.2168
systemctrl stop srv1cv83
После остановки сервера, выполняем команды:
dpkg -r 1c-enterprise83-ws-nls
dpkg -r 1c-enterprise83-ws
dpkg -r 1c-enterprise83-server-nls
dpkg -r 1c-enterprise83-server
dpkg -r 1c-enterprise83-common-nls
dpkg -r 1c-enterprise83-common
Если установлен клиент, то:
dpkg -r 1c-enterprise83-client-nls
dpkg -r 1c-enterprise83-client
После удаление. переходим в папку, предварительно скопировав туда новые пакеты и устанавливаем все новые пакеты запустив команду:
dpkg -i *.deb
На этом все. Спасибо за внимание.
Целью этой работы является обобщение методов установки и настройки 32- и 64-битного 1С Сервера 8.3.7, а также сервера базы данных PostgreSQL 9.4.x, на 64-битный Ubuntu Server 14.04.
Установка 32-битного 1С Сервера на 64-битный Ubuntu 14.04 - задача далеко не тривиальная из-за различия в архитектурах пакетов и требует для своего решения нестандартных подходов. Кроме этого, затронута тема установки Apache 2.2 на Ubuntu Server 14.04 вместо Apache 2.4, что также является непростой задачей. Необходимость наличия Apache 2.2 связана с тем, что версии платформы 1С 8.3.7 в режиме веб-клиента работают только с версией Apache 2.2, но не 2.4, входящей в стандартную конфигурацию Ubuntu 14.04.
Таким образом, приведенная статья должна позволить использовать на Ubuntu Server 14.04 x64 32- и 64-битный 1С Сервер 8.3.7 с веб-клиентом.
В статье использованы материалы статей об установке 1С Сервера и PostgreSQL .
Итак, начнем.
Установите Ubuntu Server 14.04 x64 с поддержкой OpenSSH и все дальнейшие действия будем производить через SSH-консоль.
1. Установка PostgreSQL 9.4.x.
Устанавливаем необходимые локали и определяем локаль по-умолчанию (она должна совпадать с языком базы данных, которая будет создаваться при создании информационной базы на 1С Сервере. При не совпадении языков в процессе создания информационной базы будет выдаваться ошибка):
sudo locale-gen en_US
(создаем локаль английского языка)
sudo locale-gen ru_RU
(создаем локаль русского языка)
sudo update-locale LANG=ru_RU.UTF8
(по-умолчанию устанавливаем локаль русского языка)
sudo dpkg-reconfigure locales
(переконфигурируем локали)
Устанавливаем необходимые пакеты:
sudo apt-get install libxslt1.1 ssl-cert
Установка PostgreSQL 9.4.2-1.1C:
Скачиваем необходимую версию библиотеки libicu (например, в каталог /tmp) и устанавливаем ее:
cd /tmp
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu48_4.8.1.1-3ubuntu0.6_amd64.deb
sudo dpkg -i libicu48_4.8.1.1-3ubuntu0.6_amd64.deb
Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их именно в такой последовательности:
cd /tmp
sudo dpkg -i libpq5_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-client-common_154.1.1C_all.deb
sudo dpkg -i postgresql-common_154.1.1C_all.deb
sudo dpkg -i postgresql-client-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-9.4_9.4.2-1.1C_amd64.deb
sudo dpkg -i postgresql-contrib-9.4_9.4.2-1.1C_amd64.deb
Установка PostgreSQL 9.4.x (на момент написания статьи 9.4.6) с сайта авторов сборки PostgreSQL для 1С (большое спасибо за ссылку):
Добавляем репозиторий 1c.postgrespro.ru:
sudo sh -c "echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list"
Импортируем ключ репозитория и обновляем список пакетов:
wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C-92 | sudo apt-key add - && sudo apt-get update
Устанавливаем PostgreSQL:
sudo apt-get install postgresql-pro-1c-9.4
После установки любым из двух вариантов от имени суперпользователя в файле /etc/postgresql/9.4/main/pg_hba.conf строку для соединения через Unix-сокет
local all postgres peer
для пользователя postgres приводим к виду:
local all postgres trust
Для бОльшей безопасности от имени суперпользователя в файле
/etc/postgresql/9.4/main/postgresql.conf строку
listen_addresses = "*"
приводим к виду:
listen_addresses = "localhost"
Это ограничит доступ к серверу базы данных PostgreSQL только внутри машины, на которой он установлен. Данное ограничение можно реальзовать только в случае, когда 1С Сервер и PostgreSQL установлены на одной машине. Если указанные сервера расположены на разных машинах, то необходимо оставить опцию listen_addresses = "*" или вместо "*" указать IP-адрес машины, на которой установлен 1С Сервер.
Изменяем пароль суперпользователя postgres:
psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD "password""
От имени суперпользователя в файле
/etc/postgresql/9.4/main/pg_hba.conf все методы аутентификации устанавливаем в значение md5, например:
local all postgres md5
Перезапускаем сервис PostgreSQL:
sudo service postgresql restart
ДОПОЛНЕНИЕ:
*Если забыли или не правильно установили локаль по-умолчанию перед установкой PostgreSQL или хотите изменить каталог размещения кластера базы данных:
После установки PostgreSQL кластер базы данных размещается в каталоге, который можно найти в файле /etc/postgresql/9.4/main/postgresql.conf в строке data_directory (обычно это /var/lib/postgresql/9.4/main). Если необходимо кластер базы данных разместить в другом каталоге, например в /var/lib/pgsql, то можно сделать следующее:
Создать дампы всех необходимых баз данных
Остановить сервис PostgreSQL:
sudo service postgresql stop
Удалить текущий каталог кластера базы данных:
sudo rm -rf /var/lib/postgresql
Установить пароль для UNIX-пользователя postgres:
sudo passwd postgres
Создать новый каталог кластера базы данных:
sudo mkdir /var/lib/pgsql
Установить UNIX-пользователя postgres владельцем каталога /var/lib/pgsql:
sudo chown -R postgres:postgres /var/lib/pgsql
От имени UNIX-пользователя postgres инициализировать кластер базы данных с новым каталогом и новой локалью:
su postgres -c "/usr/lib/postgresql/9.4/bin/initdb -D /var/lib/pgsql --locale=ru_RU.UTF-8"
От имени суперпользователя в файле /etc/postgresql/9.4/main/postgresql.conf изменить значение каталога кластера базы данных на новое размещение, т.е. в приведенном примере строку
data_directory = "/var/lib/postgresql/9.4/main"
нужно привести к виду
data_directory = "/var/lib/pgsql"
и сохранить файл
Запустить сервис PostgreSQL:
sudo service postgresql start
Восстановить необходимые базы данных из дампов
*Если PostgreSQL переустанавливался после того, как был установлен 1С Сервер, и невозможно подключить клиент к инфобазе:
Перезапустите сервис PostgreSQL:
sudo service postgresql restart
Перезапустите сервис 1С Сервера:
sudo service srv1cv83 restart
Перезагрузите весь сервер с Ubuntu:
sudo reboot
2. Установка Timezone и синхронизация времени (опционально).
При необходимости установить Timezone и синхронизировать время операционной системы, необходимо выполнить следующие действия:
Сконфигурировать часовой пояс:
sudo dpkg-reconfigure tzdata
и выбрать необходимый часовой пояс
Установить ntp-протокол и произвести синхронизацию времени:
sudo apt-get install ntp
sudo service ntp stop
sudo ntpdate -s time.nist.gov
sudo service ntp start
3. Установка 64-битного 1С Сервера 8.3.7.
Устанавливаем необходимые зависимости:
sudo apt-get install imagemagick
sudo apt-get install unixodbc
sudo apt-get install libgsf-1-114
Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их (логичной выглядит следующая последовательность установки):
cd /tmp
sudo dpkg -i 1c-enterprise83-common_8.3.7-1970_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-common-nls_8.3.7-1970_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.7-1970_amd64.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-server-nls_8.3.7-1970_amd64.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-ws_8.3.7-1970_amd64.deb
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.7-1970_amd64.deb
(опционально для поддержки дополнительных языков)
Запускаем 1С Сервер:
sudo service srv1cv83 start
4. Установка 32-битного 1С Сервера 8.3.7.
Включаем поддержку архитектуры i386 и обновляем список пакетов:
sudo dpkg --add-architecture i386
sudo apt-get update
Устанавливаем необходимые зависимости в архитектуре i386:
sudo apt-get install imagemagick:i386
sudo apt-get install unixodbc:i386
sudo apt-get install ttf-mscorefonts-installer
(в процессе установки необходимо принять условия лицензионного соглашения)
Версия i386 библиотеки libgsf-1-114 отсутствует в репозитории Ubuntu, однако имеется в репозитории Debian. Поэтому нам придется скачать эту библиотеку из репозитория Debian. Скачиваем версию i386 библиотеки libgsf-1-114 (например, в каталог /tmp) и устанавливаем ее именно в такой последовательности:
cd /tmp
wget http://ftp.us.debian.org/debian/pool/main/libg/libgsf/libgsf-1-common_1.14.36-1_all.deb
wget http://ftp.us.debian.org/debian/pool/main/libg/libgsf/libgsf-1-114_1.14.36-1_i386.deb
sudo dpkg -i libgsf-1-common_1.14.36-1_all.deb
sudo dpkg -i libgsf-1-114_1.14.36-1_i386.deb
Скачиваем с сайта 1С все необходимые deb-файлы в каталог /tmp и устанавливаем их (логичной выглядит следующая последовательность установки) :
cd /tmp
sudo dpkg -i 1c-enterprise83-common_8.3.7-1970_i386.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-common-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-server_8.3.7-1970_i386.deb
(обязательно)
sudo dpkg -i 1c-enterprise83-server-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-ws_8.3.7-1970_i386.deb
(опционально для работы веб-клиента)
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.7-1970_i386.deb
(опционально для поддержки дополнительных языков)
sudo dpkg -i 1c-enterprise83-crs_8.3.7-1970_i386.deb
(опционально для функционирования хранилища конфигураций)
Изменяем владельца каталога /opt/1C:
sudo chown -R usr1cv8:grp1cv8 /opt/1C
Запускаем 1С Сервер:
sudo service srv1cv83 start
5. Установка Apache 2.2 (опционально, большое спасибо за рекомендацию).
От имени суперпользователя добавим в список следующие репозитории:
- переключаемся в консоль суперпользователя:
- добавляем репозитории:
cat <
deb http://archive.ubuntu.com/ubuntu precise-updates main restricted universe
deb http://security.ubuntu.com/ubuntu precise-security main restricted universe multiverse
EOF
Редактируем или создаем файл /etc/apt/preferences.d/preferences, добавляя в него следующие строки:
Package: apache2*
Pin: release n=precise
Pin-Priority: 900
- выходим из консоли суперпользователя:
exit
- обновляем список пакетов:
sudo apt-get update
- устанавливаем Apache 2.2:
sudo apt-get install apache2
- проверяем версию установленного Apache:
apache2 -v
6. Настройка файрвола UFW (опционально).
Для обеспеспечения бОльшей безопасности желательно настроить и включить файрвол UFW. Для этого необходимо выполнить следующие дествия:
sudo ufw allow ssh
или
sudo ufw allow 22
(если для протокола SSH используется порт 22)
sudo ufw allow 80
(для доступа по HTTP-протоколу)
sudo ufw allow 443
(для доступа по HTTPS-протоколу)
sudo ufw allow 1540
sudo ufw allow 1541
sudo ufw allow 1560:1591/tcp
(для работы 1С Сервера, если кластер серверов установлен со стандартными значениями портов)
sudo ufw enable
(включаем файрвол)
7. Установка OpenJDK 1.8 (опционально).
При необходимости запуска java-приложений (в том числе из 1С), можно установить OpenJDK 1.8 следующим образом:
Добавляем ppa-репозиторий и обновляем список пакетов:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
Устанавливаем OpenJDK:
sudo apt-get install openjdk-8-jdk
(для установки JDK)
или
sudo apt-get install openjdk-8-jre
(для установки только JRE)
Актуализируем Java-машину (если ранее уже была установлена младшая версия Java):
sudo update-alternatives --config java
Актуализируем Java-компилятор (если ранее уже была установлена младшая версия Java):
sudo update-alternatives --config javac
Проверяем установленную версию Java:
java -version
8. Включение режима отладки 1С Сервера (опционально).
Останавливаем сервис 1С Сервера:
sudo service srv1cv83 stop
От имени суперпользователя редактируем файл /etc/init.d/srv1cv83, а именно - находим следующую строку:
#SRV1CV8_DEBUG=
раскомментируем ее и присвоим значение 1 так, чтобы получилась следующая строка:
SRV1CV8_DEBUG=1
сохраняем файл /etc/init.d/srv1cv83 и запускаем сервис 1С Сервера:
sudo service srv1cv83 start
На клиентской машине в меню конфигурации "Параметры" -> "Запуск 1С:Предприятия" -> "Дополнительные" включаем следующие пункуты:
"Устанавливать режим разрешения отладки"
"Начинать отладку при запуске"
9. Параметры для создания информационной базы на сервере и подключения к ней.
От имени суперпользователя необходимо отредактировать файл /etc/hosts таким образом, чтобы в нем была строка:
IP адрес машины, на которой установлен 1С Сервер hostname -f hostname, например:
(промежутки должны быть пробелами, а не табами)
На клиентской WINDOWS-машине от имени администратора
в файл C:\Windows\System32\drivers\etc\hosts необходимо д
обавить
строку, указанную выше, например:
192.168.0.111 test.example.com test
При создании информационной базы в консоли Администрирования 1С Серверов в качестве сервера базы данных желательно указывать localhost (допустимо указывать hostname машины, на которой запущен PostgreSQL и 1С Сервер, и который прописан в файле C:\Windows\System32\drivers\etc\hosts ). Данная рекомендация действительна только для случая, когда 1С Сервер и PostgreSQL находятся на одной машине. В противном случае вместо localhost необходимо указывать hostname машины, на которой установлен PostgreSQL.
При подключении к созданной информационной базе в качестве кластера серверов желательно указывать hostname машины, на которой запущен 1С Сервер и который прописан в файле C:\Windows\System32\drivers\etc\hosts (для Windows-клиентской машины), а в качестве информационной базы в кластере - имя информационной базы, указанное при ее создании. Если кластер серверов запущен на не стандартных портах, то в качестве кластера серверов указать hostname:port, например srv1c:1741.
Проверяем состояние сервисов на Ubuntu-сервере:
service postgresql status
Если все ОК, то статус должен быть "online".
service srv1cv83 status
Если все ОК, то должны быть следующие статусы:
Init script: STARTED
Ragent RUNNING
При необходимости проверяем статус файрвола:
service ufw status
Если файрфол запущен, то статус должен быть "start/running".
На этом установку и настройку 1С Сервера + PostgreSQL + Ubuntu 14.04 завершаем.
Как известно 4 июля фирма 1С выпустила новую платформу версии 8.3. Помимо исправления ошибок и добавления новых возможностей данный релиз платформы принес также давно ожидаемую возможность - нативая работа в среде Linux.
Однако при установке есть ряд подводных камней (особенно для новичков в Linux), которые затруднят установку и возможно сформируют негативное впечатление о новом режиме работы.
Я постараюсь как можно более подробно описать процесс установки данной платформы на наиболее популярный дистрибутив - Ubuntu 12.04.
Итак первый шаг - скачивание самой платформы с сайта 1С. Дистрибутив находится по адресу . Из всего списка Вам требуется скачать 2 пакета (у нас 64 битный дистрибутив) :
В случае если у вас дистрибутив 32 бита, то и скачать потребуется 32 битные пакеты. Заметим, что для скачивания вышеприведенных ссылок необходима действующая подписка на ИТС. Также вероятно эти пакеты будут доступны на дисках ИТС (хотя не факт, так как релиз носит ознакомительный характер).
Итак скачиваете два пакета в папку Загрузка (вообще скачать можете в любую папку в домашнем каталоге). Далее заходите в эту папку файловым менеджером Nautilus, щелкаете правой клавишей на файле client.deb64.tar.gz и выбираете пункт контекстного меню «Извлечь сюда». Тоже самое проделываете с файлом deb64.tar.gz.
В итоге в папке со скачанными файлами появятся 2 папки - client.deb64 и deb64. Вот тут для новичков наступает более трудный этап, так как самый простой способ установить программы - это воспользоваться Терминалом (консоль). Для этого вызовите программу Терминал. Самый простой путь вызвать меню Dash (верхняя левая кнопка Unity аналог кнопки Пуск в Windows) и в строке поиска наберите пару первых букв программы Тер или полностью слово Терминал.
Запустите терминал. В дальнейшем можете просто копировать команды из этого текста в Терминал. Первым делом перейдите в папку распакованных пакетов в терминале (напомню у нас это папка Загрузки. Очень удобной возможностью сокращающей ввод в любом терминале Linux является клавиша Tab. Нажимая ее вы дополняете команду. Linux сама подсказывает вам варианты):
cd Загрузки/deb64/ (нажмите Enter)
Этой командой мы перешли в каталог deb64. Далее в терминале введите команду установки всех пакетов из этой папки:
sudo dpkg -i 1c-* и нажмите клавишу Enter
Консоль запросит у вас пароль и после того, как вы его введете установит пакеты 1С в папку /opt/1 °C/v8.3/x86_64/ (последняя папка в случае установки 32 битной версии будет другая). Далее вы должны войти в папку /home/leo/Загрузки/client.deb64 для этого наберите:
cd. (Enter)
cd Загрузки/ client.deb64 (Enter)
Здесь также выполните команду sudo dpkg -i 1c-* и введите пароль (впрочем консоль пару минут будет помнить ранее введенный пароль и возможно снова вводить вам его не потребуется).
После загрузки вы должны запустить конфигурационный скрипт, который проверит все ли требуемые зависимости установлены и попросит если требуется их установить. Помимо
этого данный скрипт просит установить каталог шрифтов требуемых для работы 1С.
sudo /opt/1 °C/v8.3/x86_64/utils/config_system /usr/share/fonts/
У меня запуск этой команды ругнулся на отстуствие двух пакетов:
Please install following package: libgsf
Please install following package: UnixODBC
Для того, чтобы их инсталлировать введите команды:
sudo apt-get install libgsf-bin
sudo apt-get install unixodbc-bin
Однако это еще не все. При новом запуске проверочного скрипта он выдал сообщение:
No truetype conversion utility found!
Please install ttf2afm or ttf2pt1!
Поиск в каталоге Ubuntu не дал результата, однако в интернете я нашел требуемый пакет, скачал в папку Загрузки, нажал правой клавишей на нем и выбрал пункт меню «Открыть в Центр приложений Ubuntu». Далее в Центре приложений выбрал пункт «Установить».
Этот пакет вы можете найти по наименованию:
Ну вот и все. Осталось только установить ключ. Версия для Linux работает как с аппаратной защитой, так и с программной. У меня куплена программная защита, однако инсталляцию программной лицензии мы разберем в следующей статье.
Что касается аппаратной защиты, то вам надо будет скачать и установить драйвер аппаратного ключа.
В этой статье я попробую рассказать об установке сервера 1С и сервера PostgreSQL на операционной системе Ubuntu 16.04/18.04. В статье используется версия сервера 1С - 8.3.13.1472 и версия PostgreSQL - 10.3-2.1C. Кроме этого в статье приведена информации о некоторых дополнительных настройках.
Установка PostgreSQL
В начале нужно установить необходимые локали и определить локаль по умолчанию. Локали определяют используемые в системе языки, а также всякие региональные особенности - форматы чисел, даты и времени, денежные знаки и прочее. Локаль по умолчанию должна совпадать с языком базы данных, которая будет создана сервером 1С при создании информационной базы.
sudo dpkg-reconfigure locales
sudo apt-get install libicu55
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb
sudo dpkg -i libicu55_55.1-7ubuntu0.4_amd64.deb
Раньше пакет «postgresql-common» входил в состав дистрибутива который размещался на сайте «1С», теперь же (начиная с PostgreSQL 9.6.3-1.1C) этот пакет нужно устанавливать из стандартных репозиториев.
Тут возникает небольшое затруднение, связанное с тем, что мы устанавливаем PostgreSQL 10: на момент написания статьи стандартный репозиторий содержит неподходящую для PostgreSQL 10 версию пакета «postgresql-common».
Чтобы исправить это нужно создать файл /etc/apt/sources.list.d/pgdg.list и записать в него строку, для Ubuntu 16.04:
deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main
для Ubuntu 18.04:
deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
Затем нужно выполнить следующие команды:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
После этого можно установить нужную нам версию пакета «postgresql-common»:
sudo apt-get install postgresql-common
Подготовительные работы закончены, скачиваем дистрибутив PostgreSQL 10 с сайта «1С», распаковываем его (там всего три пакета) и устанавливаем именно в таком порядке:
sudo dpkg -i libpq5_10.3-2.1C_amd64.deb
sudo dpkg -i postgresql-client-10_10.3-2.1C_amd64.deb
sudo dpkg -i postgresql-10_10.3-2.1C_amd64.deb
Если все прошло нормально, то выглядеть это будет приблизительно так:
Настройка PostgreSQL
После установки можно сделать некоторые настройки PostgreSQL.
От имени суперпользователя открываем файл /etc/postgresql/10/main/pg_hba.conf и меняем в нем строку:
local all postgres peer
local all postgres trust
Это позволит войти под пользователем postgres без пароля.
Кроме этого можно открыть файл /etc/postgresql/10/main/postgresql.conf (тоже от имени супер пользователя) и поменять в нем строку:
listen_addresses = "*"
listen_addresses = "localhost"
Это ограничит подключения к PostgreSQL локальной машиной. Таким образом, если сервер 1С и PostgreSQL находятся на разных компьютерах, то это либо вообще не нужно делать, либо вместо «*» нужно указать IP-адрес сервера 1С.
После всех этих манипуляций перезапускаем сервер PostgreSQL:
Теперь у нас есть возможность поменять пароль суперпользователя postgres :
psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD "password""
Отключаем безпарольный доступ: вновь от имени суперпользователя открываем файл /etc/postgresql/10/main/pg_hba.conf и меняем в нем строку:
local all postgres trust
local all postgres md5
В заключении еще раз перезапускаем сервер:
sudo service postgresql restart
Установка сервера 1С
Начать, как обычно, нужно с установки дополнительных библиотек:
sudo apt-get install imagemagick
sudo apt-get install unixodbc
sudo apt-get install ttf-mscorefonts-installer
sudo apt-get install libgsf-1-114
Для версии 8.3.13 и выше используется библиотека ImageMagick входящая в состав дистрибутива, так что устанавливать пакет imagemagick не обязательно (хотя вреда от этого не будет).
Пакет ttf-mscorefonts-installer в процессе установки попросит принять лицензионное соглашение:
На момент написания статьи в репозиториях Ubuntu 18.04 не было актуальных версий требуемых пакетов. Если в настоящее время их все еще нет, то можно попробовать добавить репозитории с неактуальными версиями пакетов. Создаем файл /etc/apt/sources.list.d/raring.list и записываем в него следующие строки:
deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-updates main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-backports main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-backports main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ raring-proposed main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ raring-proposed main restricted universe multiverse
После этого выполнить команду:
sudo apt-get update
После установки дополнительных библиотек скачиваем с сайта 1С все необходимые файлы (Cервер 1С:Предприятия (64-bit) для DEB-based Linux-систем) и устанавливаем их в таком порядке:
sudo dpkg -i 1c-enterprise83-common_8.3.13-1472_amd64.deb
sudo dpkg -i 1c-enterprise83-common-nls_8.3.13-1472_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.13-1472_amd64.deb
sudo dpkg -i 1c-enterprise83-server-nls_8.3.13-1472_amd64.deb
sudo dpkg -i 1c-enterprise83-ws_8.3.13-1472_amd64.deb
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.13-1472_amd64.deb
Пакеты с приставкой «-nls» нужны для поддержки дополнительных языков и не являются обязательными к установке. Пакеты с приставкой «-ws» нужны для работы веб-клиента и также не являются необходимыми.
Теперь изменим владельца каталога /opt/1C:
sudo chown -R usr1cv8:grp1cv8 /opt/1C
И запустим сервер 1С:
sudo service srv1cv83 start
Если у Вас правильно настроена сеть и компьютеры видят друг друга, то ничего больше делать не нужно. Если же нет, то необходимо сделать так, что бы сервер 1С видел сервер PostgreSQL, а клиентские машины видели сервер 1С. Для этого в файлы /etc/hosts или C:\Windows\System32\drivers\etc\hosts нужно добавить строки:
В качестве разделителей должны быть пробелы, а не табуляции.
Дополнительные настройки
Все приведенные ниже действия не являются обязательными.
Установка Apache
Начиная с версии 8.3.8 платформа 1С поддерживает Apache 2.4, поэтому можно просто установить текущую версию:
sudo apt-get install apache2
Если по каким-то причинам Вам требуется Apache 2.2 то для начала нужно добавить репозитории с неактуальными версиями пакетов, как описано выше (если, конечно, Вы уже этого не сделали). Затем выполнить команду:
sudo apt-cache showpkg apache2
Команды выдаст список версий доступных к установке, затем, выбрав нужную версию сделать так:
sudo apt-get install apache2=<номер версии>
Например:
sudo apt-get install apache2=2.2.22-6ubuntu5.1
Проверить версию Apache можно так:
Включение отладки на сервере
Останавливаем сервер:
sudo service srv1cv83 stop
В файле /etc/init.d/srv1cv83 находим строку:
Приводим ее к виду:
Запускаем сервер:
sudo service srv1cv83 start
В конфигураторе на клиентской машине идем в «Параметры» -> «Запуск 1С:Предприятия» -> «Дополнительные» и включаем два пункта:
- «Устанавливать режим разрешения отладки»
- «Начинать отладку при запуске»
Настройка UFW
UFW - это простая утилита для конфигурирования файрвола Netfilter.