MyTetra Share
Делитесь знаниями!
Установка и настройка 1С 8.2 на Scientific Linux 6.5 - Установка 1С, установка PostgeSQL, настройка сети
Время создания: 23.06.2014 12:11
Автор: Сергей Степанов AKA Xintrea
Текстовые метки: 1С, предприятие, установка, настройка, Linux, Scientific, PostgreSQL, iptables, фаирвол
Раздел: Компьютер - Windows - 1С - 1С и Linux
Запись: xintrea/mytetra_syncro/master/base/1403511086idyk1ajqyr/text.html на raw.github.com

Установка сервера 1С

Установлены пакеты сервера 1С, в следующей последовательности:

1c-enterprise82-common_8.2.19-83_i386.rpm

1c-enterprise82-common-nls_8.2.19-83_i386.rpm

1c-enterprise82-server_8.2.19-83_i386.rpm

1c-enterprise82-server-nls_8.2.19-83_i386.rpm

1c-enterprise82-ws_8.2.19-83_i386.rpm

1c-enterprise82-ws-nls_8.2.19-83_i386.rpm

1c-enterprise82-crs_8.2.19-83_i386.rpm

1c-enterprise82-crs-nls_8.2.19-83_i386.rpm

Установку пакетов можно проверить с помощью команды:

yum list | grep 1C

Далее для проверки запустить config_server под рутом:

# /opt/1C/v8.2/i386/utils/config_server

Please install following package: ImageMagick

Please install following package: FreeType

Please install following package: libgsf

Please install following package: libglib

Please install following package: UnixODBC

Can not detect font directory, please specify it!

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

Установка ImageMagick:

yum install ImageMagick

При его установке будут установлены пакеты FreeType и libgsf.

Пакета libglib в Scientific Linux 6.5 нет, для сервера нужна библиотека из пакета glib2 (который установлен по-умолчанию). Не найдя /usr/lib/libglib-2.0.so, сервер пишет, что нужно установить пакет libglib. Поэтому вместо установки несуществующего в Scientific Linux 6.5 пакета, создадим линк там, где сервер 1С будет искать библиотечные файлы:

ln -s /lib/libglib-2.0.so.0 /usr/lib/libglib-2.0.so

Пакет UnixODBC в Scientific Linux 6.5 именуется с маленькой буквы, его установка выглядит так:

yum install unixODBC

Для установки шрифтов (Can not detect font directory, please specify it!) понабится программа cabextract. Она находится в репозитарии EPEL. Вначале нужно подключить репозитарий командой:

yum install epel-release

И после этого можно установить cabextract:

yum install cabextract

Установка шрифтов компании Microsoft

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

$ wget -c "http://corefonts.sourceforge.net/msttcorefonts-2.5-1.spec"

Для разворачивания шрифтов потребуется программа rpmbuild. Для этого нужно установить пакет rpm-build:

yum install rpm-build

Находясь в директории с этим файлом, даем от простого пользователя команду:

$ rpmbuild -bb msttcorefonts-2.5-1.spec

Будет выдана ошибка:

ошибка: Неудовлетворенные зависимости сборки:

/usr/bin/ttmkfdir нужен для msttcorefonts-2.5-1.noarch

Нужно установить пакет ttmkfdir:

yum install ttmkfdir

Снова запустить rpmbuild -bb msttcorefonts-2.5-1.spec. В результате, в каталоге пользователя будет создан следующий пакет:

~/rpmbuild/RPMS/noarch/msttcorefonts-2.5-1.noarch.rpm

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

После установки снова нужно проверить зависимости сервера 1С:

# /opt/1C/v8.2/i386/utils/config_server

Далее возможно появление об ошибке (возможно, после перезагрузки):

# /opt/1C/v8.2/i386/utils/config_server

No truetype conversion utility found!

Please install ttf2afm or ttf2pt1!

Нужно доустановить пакет ttf2pt1 из репозитария EPEL.

yum install ttf2pt1

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

Проверка старта 1С сервера

Проверить старт 1С сервера можно так (от рута):

service srv1cv82 start

При первом запуске возможно появление сообщения:

Starting 1C:Enterprise 8.2 server:

Warning: pid file existed on server start. it can mean that last run failed...

OK

При последующих запусках такого сообщения появляться не должно.

При старте 1С сервера должно создасться 3 процесса:

# ps aux | grep 1C

usr1cv82 4650 0.1 0.3 118448 14564 ? Ssl 11:11 0:00 /opt/1C/v8.2/i386/ragent -daemon

usr1cv82 4653 0.3 0.5 245780 20476 ? Sl 11:11 0:00 /opt/1C/v8.2/i386/rmngr -port 1541 -range 1560:1591

usr1cv82 4667 0.2 0.4 116000 19768 ? Sl 11:11 0:00 /opt/1C/v8.2/i386/rphost -range 1560:1591 -reghost asun -regport 1541 -pid 2437be18-f84a-11e3-a88d-005056b2347a

Если запущен только ragent, нужно остановить 1С сервер, удать каталог .1cv82 в каталоге /home/usr1cv82 и снова запустить сервер 1С.

Сборка PostgreSQL из исходников.

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

yum install icu libicu libicu-devel rpm-build wget glibc-devel bison flex readline-devel zlib-devel openssl-devel pam-devel rpm-devel rpmdevtools gcc make glibc-devel bison flex python-devel tcl-devel readline-devel zlib-devel openssl-devel krb5-devel e2fsprogs-devel gettext pam-devel openldap-devel libxml2-devel libxslt-devel

Нет, Etersoft уже сделал сборку, можно воспользоваться ей. Ссылка на каталог :

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/

Ссылки на файлы:

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/libpq5.2-9.0eter-9.0.4-eter17scientific.i586.rpm

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/postgre-etersoft9.0-9.0.4-eter17scientific.i586.rpm

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/postgre-etersoft9.0-contrib-9.0.4-eter17scientific.i586.rpm

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/postgre-etersoft9.0-seltaaddon-9.0.4-eter17scientific.i586.rpm

ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/stable/Scientific/6/postgre-etersoft9.0-server-9.0.4-eter17scientific.i586.rpm

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

# service postgresql stop

Stopping postgresql service: [PASSED]

# service postgresql start

Initializing database: [ DONE ]

Starting postgresql service: [ DONE ]

Настройка автозапуска сервисов

Автозапуск 1С и PostgeSQL:

chkconfig srv1cv82 on

chkconfig postgresql on

Проверка таблицы автозапуска:

# chkconfig

auditd 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

crond 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

ip6tables 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

iptables 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

messagebus 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

netconsole 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл

netfs 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл

network 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

postfix 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

postgresql 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

rdisc 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл

restorecond 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл

rsyslog 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

saslauthd 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл

srv1cv82 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

sshd 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

udev-post 0:выкл 1:вкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

Настройка PostgreSQL

В файле

/var/lib/pgsql/data/pg_hba.conf

Надо сделать настройки:

# Local unix soket connection

local all all trust

# Local IPv4 connection

host all all 127.0.0.1/32 trust

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

# su postgres

Задается пароль основного пользователя postgres (не путать UNIX-пользователем postgres) в PostgreSQL

psql -U postgres -c "ALTER USER postgres PASSWORD 'НовыйПароль'"

В файле /var/lib/pgsql/data/postgresql.conf — настройки сервера. Нужно указать параметры (раскомментировать строки или если этих параметров нет, то ввести их вручную):

default_with_oid = on # не сделано, такой опции нет. Есть default_with_oids.

track_counts = on

autovacuum = on

Далее надо перезапустить сервис:

# service postgresql stop

# service postgresql start

Установка имени сервера

Сервер назывался localbsun (указано при установке Linux), прописано в /etc/sysconfig/network. Имя заменено на bsun. Для этого в /etc/sysconfig/network прописано bsun.

В /etc/hosts добавлено имя bsun:

Было:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

Стало

127.0.0.1 bsun localhost localhost4 localhost.localdomain localhost.localdomain4

::1 localhost localhost6 localhost.localdomain localhost.localdomain6

<IP адрес сервера> bsun

В той или иной мере неработающие варианты:

Стало:

127.0.0.1 bsun localhost localhost4

::1 bsun localhost localhost6

И еще вариант:

127.0.0.1 bsun localhost localhost4 localhost.localdomain localhost.localdomain4

::1 bsun localhost localhost6 localhost.localdomain localhost.localdomain6

<IP адрес сервера> bsun localhost localhost4 localhost.localdomain localhost.localdomain4

И еще так:

127.0.0.1 bsun localhost localhost4 localhost.localdomain localhost.localdomain4

::1 localhost localhost6 localhost.localdomain localhost.localdomain6

Дана команда:

hostname bsun

Сделана перезагрузка.

Настройка DNS имени

На клиентской машине в файле C:\windows\system32\drivers\etc\hosts прописано:

<IP сервера> bsun

Настройка фаирвола

Чтобы открыть порты 1С надо привести файл /etc/sysconfig/iptables к виду:

# Firewall configuration written by system-config-firewall

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

# Разрешение соединения с портом 22

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

# Разрешение соединения с портами 1С

-A INPUT -p tcp -m tcp -m multiport --dports 1540,1541,1542,80,443 -j ACCEPT

-A INPUT -p udp -m udp -m multiport --dports 1540,1541,1542 -j ACCEPT

-A INPUT -p tcp -m tcp -m multiport --dports 1560:1591 -j ACCEPT

-A INPUT -p udp -m udp -m multiport --dports 1560:1591 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

И перезапустить сервис iptables.

Отключение SELinux

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

В файле /etc/selinux/config прописана строка:

# SELINUX=enforcing

SELINUX=disabled

И сделана перезагрузка.

Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования