База знаний База знаний проекта Орелучет

Установка сервера 1С Предприятие 8.3 на Linux (CentOS 6.5 64-bit, IBM DB2 9.7 FixPack 6 64-bit, 1C:Предприятие Сервер 8.3.5.1119 32-bit)

1. Обновляем пакеты до актуальных версий:

yum upgrade

2. Ставим всякие приятные мелочи, синхронизируем время на сервере:

yum install mc screen wget man htop ntp
chkconfig ntpd on
service ntpd start

3. Настраиваем разрешение имени для сервера (это важно для сервера 1С) и сетевую доступность:

a. Вписываем имя хоста (srv1c) в /etc/hosts:

127.0.0.1 srv1c localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 srv1c localhost localhost.localdomain localhost6 localhost6.localdomain6

b. Вписываем имя хоста в /etc/sysconfig/network:

NETWORKING=yes
HOSTNAME=srv1c

c. Проверяем, что имя пингуется:

service network restart
ping srv1c

d. Устанавливаем Samba:

yum install samba

useradd -s /sbin/nologin -m samba
passwd samba

chown -R samba /home/samba
chgrp -R samba /home/samba
chmod -R a+rw /home/samba

e. Пишем в /etc/samba/smb.conf:

[global]
workgroup = WORKGROUP
netbios name = srv1c
server string = My 1C Server
security = share
browseable = Yes
[incoming]
path = /home/samba
readonly = No
guest ok = Yes

f. Прописываем Samba в автозагрузку и запускаем:

chkconfig --level 2345 smb on
chkconfig --level 2345 nmb on
service smb start
service nmb start

g. Отключаем файрволл (сервер внутри сети, в угоду простоте не будем заморачиваться):

service iptables save
service iptables stop
chkconfig iptables off

service ip6tables save
service ip6tables stop
chkconfig ip6tables off

h. Отключаем SELinux — в файле /etc/sysconfig/selinux присваиваем параметру SELINUX флаг disabled:

SELINUX=disabled

i. Перегружаем сервер:

reboot

j. И проверяем пинг по имени с клиентских машин:

ping srv1c

Должно(!) пинговаться.

11. Устанавливаем сервер 1С:Предприятие — распаковываем дистрибутив 32-битного сервера 1С и запускаем установку:

yum localinstall ./*.rpm

12. Прописываем сервер 1С в автозагрузку:

chkconfig srv1cv83 on

13. Устанавливаем необходимые библиотеки (32бит):

yum install ImageMagick.i686 libgsf.i686 unixODBC.i686 glib2.i686

14. Настраиваем шрифты для корректной работы 1С:

a. Сначала устанавливаем необходимые для сборки утилиты (подключив репозиторий epel):

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install ttf2pt1 rpm-build cabextract ttmkfdir

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

wget http://corefonts.sourceforge.net/msttcorefonts-2.5-1.spec
rpmbuild -bb msttcorefonts-2.5-1.spec

Должны скачаться все шрифты, и собраться пакет. Если выдаст какую-нибудь ошибку, типа не удалось разрешить адрес зеркала — просто запустим еще раз.

c. Устанавливаем пакет шрифтов:

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

15. Устанавливаем DB2:

a. Для начала устанавливаем библиотеки совместимости:

yum install compat-libstdc++-33

b. Ставим 32бит библиотеку (libpam.so) и прописываем на нее линк:

yum install pam.i686
ln -s /lib/libpam.so.0 /lib/libpam.so

c. Отключаем ASLR:

echo "" >> /etc/sysctl.conf
echo '# Disabling ASLR per IBM recommendation for DB2 servers prior 10.1 FP3:' >> /etc/sysctl.conf
echo '#   ASLR may cause intermittent failures in shmat() for any db2 processes other than db2sysc.' >> /etc/sysctl.conf
echo 'kernel.randomize_va_space = 0' >> /etc/sysctl.conf
sysctl -p

d. Запускаем установку DB2:

./db2_install

Соглашаемся с каталогом по умолчанию:

нет

16. Настраиваем экземпляр DB2:

a. Создаём пользователей необходимых для работы DB2:

useradd -m dasusr1
useradd -m db2fenc1
useradd -m db2inst1

b. Задаем им пароли:

passwd dasusr1
passwd db2fenc1
passwd db2inst1

c. Создаем DB2 Administration Server (DAS):

cd /opt/ibm/db2/V9.7/instance/
./dascrt dasusr1

d. Создаем экземпляр DB2, настроенный на работу через порт 50000 (порт DB2 по-умолчанию):

./db2icrt -u db2fenc1 -p 50000 db2inst1

e. Заходим под пользователем db2inst1:

su - db2inst1

f. Настраиваем экземпляр DB2 для работы с 1С:

db2set DB2_WORKLOAD=1C

g. Запускаем экземпляр DB2:

db2start

h. Возвращаемся в root через Ctrl-D (logout).

i. Настраиваем автозапуск сервера:

./db2iauto -on db2inst1

17. Теперь настраиваем 1С и DB2 на совместную работу:

a. Для начала выясняем код группы доступа, которая является основной для запущенного экземпляра DB2:

id db2inst1

Получаем вот такой вывод:

uid=503(db2inst1) gid=504(db2inst1) группы=504(db2inst1),502(dasusr1)

b. После этого добавляем пользователя usr1cv8 в группу доступа (504):

usermod -G 504 usr1cv8

c. Чтобы сервер 1С:Предприятия видел динамические библиотеки DB2, добавляем их в пути поиска, а так же задаем «правильные» переменные окружения для корректной работы. Для этого добавляем в конец файла /home/usr1cv8/.bashrc подключение профиля от нашего экземпляра DB2:

echo "" >> /home/usr1cv8/.bashrc
echo "# The following three lines have been added by UDB DB2." >> /home/usr1cv8/.bashrc
echo "if [ -f /home/db2inst1/sqllib/db2profile ]; then" >> /home/usr1cv8/.bashrc
echo "    . /home/db2inst1/sqllib/db2profile" >> /home/usr1cv8/.bashrc
echo "fi" >> /home/usr1cv8/.bashrc

d. Теперь перезапускаем сервер 1С:

service srv1cv83 restart

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

Оставьте комментарий

Ваш email не будет опубликован. Поля, обязательные к заполнению, помечены *

Вы можете использовать следующие HTML теги и аттрибуты <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>