Все о Linux. LinuxRSP.Ru

[an error occurred while processing this directive]

Cвежие новости Linux и BSD, анонсы статей и книг прямо в почтовый ящик!
Подписаться письмом


 Сегодняшние новости:

25 лет исполнилось ядру Linux

Релиз KDevelop 5.0

Oracle открывает код JDK9 для ARM

Выпущен Timewarrior 1.0.0

Релиз Android 7.0

Percona Memory Engine для MongoDB на базе WiredTiger

PowerShell открыт и доступен для Linux

Форк TrueCrypt: VeraCrypt 1.18

Релиз Snapcraft 2.14

Релиз Go 1.7

Стабильный выпуск рабочего стола Lumina

Вышла первая версия аналога OpenCV - DCV 0.1

Выпуск минималистичной программы для мониторинга jsonmon 3

В MIT разработали новый язык программирования

Первый релиз Qt5Gtk2

Godot 2.1 - новая версия открытого игрового движка

Свободная цифровая станция звукозаписи: Ardour 5.0

Обновление SkypeWeb Plugin for Pidgin

Вышла версия 3.0 Android File Transfer для Linux (и для OS X)

Программный аналог MIDI-контроллера для создания музыки: Launchpadd v1.3

Mozilla спонсирует поддержку Python 3.5 в PyPy

Ef 0.08 - программа для моделирования динамики заряженных частиц

Обновление текстового редактора TEA до версии 42.0.0

Релиз OpenOrienteering Mapper 0.6.4

Вышли Guix и GuixSD 0.11

Релиз Opera 39

Выпуск LibreOffice 5.2

В OpenSSH обнаружены и устранены некоторые уязвимости

Эмулятор FCEUX 2.2.3

Компания Билайн переходит на российскую СУБД с открытым исходным кодом Tarantool

Google

 Новые статьи :

Утилиты для восстановления потерянных данных в Linux

Лучшие файловые менеджеры для Android

20 лучших бесплатных книг о Linux

Как сгенерировать открытый/закрытый SSH-ключ в Linux

Grive - клиент Google Drive для Linux с открытым исходным кодом

Протокол IPv6: варианты подключения

Сервер из образа: DHCP + TFTP + Initrd + OpenVZ

Обзор веб-панелей управления хостингом

Приёмы работы с Vim

Nginx как Reverse Proxy для сайта, использующего SSL

Разработка модулей ядра Linux

Мониторинг нагрузки http-сервера Apache 2

Перевод комментариев к файлу конфигурации Squid

Решение проблем при использовании "1c предприятие" 8.2 в Linux

Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки







Rambler's Top100





 
 

Решение проблем при использовании "1c предприятие" 8.2 в Linux

1c:Предприятие 8.2 - Troubleshooting

Последнее время отвечая на комментарии в теме "Установка сервера 1с предприятия" замечаю что 90% ошибок повторяются из раза в раз, причем ошибки в основном связаны либо с невнимательностью, либо с установкой на платформу отличную от указанной в статье. Этот раздел посвящен именно ошибкам которые возникают во время установки и настройки сервера 1с предприятия и его компонентов.

В качестве эпиграфа приведу один из комментариев к статье "Установка сервера 1с предприятия на Fedora 12."

"Я делаю все по статье, но прямо с первых строк ошибки, rpm - команда не найдена. Что я делаю не так? Ох уж эта 1с - как бубном была, так бубном и осталась. PS: У меня Ubuntu" ;)

1. Ошибка при запуске config_server

Проблема возникает на операционных системах с архитектурой x86_64 из-за отсутствия 32-х битного пакета glibc.

[root@srv1c utils]# ./config_server /usr/share/fonts/microsoft-core/
ls: cannot access /lib/libc-*.so: No such file or directory

Решение:

[root@srv1c utils]# yum install glibc.i686

2. Не запустился сервер 1с предприятия

После завершения установки сервер 1с предприятия сообщил о том что запустился, но не работает:

[root@1csrv ~]# rpm -i 1C_Enterprise82-common-8.2.14-528.x86_64.rpm 1C_Enterprise82-server-8.2.14-528.x86_64.rpm
Starting 1C:Enterprise 8.2 server: OK

При попытке остановить пишет:

[root@1csrv ~]# service srv1cv82 stop
Stopping 1C:Enterprise 8.2 server: Warning: server not running!

1. Проверяем какие порты слушает сервер 1с предприятия

При правильно функционирующем сервере с настройками по-умолчанию: ragent (агент сервера) должен слушать порты 1540 и 1561; rmngr (менеджер сервера) - порты 1541 и 1560; rphost (рабочий процесс) - порты 1562 и 1563. Проверяем:

[root@1csrv ~]# netstat -tlnp | grep :15
tcp        0      0 0.0.0.0:1560    0.0.0.0:*    LISTEN      1508/rmngr
tcp        0      0 0.0.0.0:1541    0.0.0.0:*    LISTEN      1508/rmngr

Если в результате проверки получилось что работает только rmngr (менеджер сервера), значит при установке были не правильно созданы конфигурационные файлы и мы можем переходить к п.2.

2. Проверяем selinux

Сервер 1с предприятия вполне может работать при включенным SELinux c политикой targeted в запрещающем режиме Enforcing, однако в некоторых комбинациях он может вызвать проблему при запуске ragent (агента сервера 1с). Проверяем:

[root@1csrv ~]# getenforce
Enforcing

Открываем для редактирования /etc/sysconfig/selinux и меняем параметр SELINUX на disabled или permissive.

SELINUX=disabled

Перезагружаем сервер.

3. Разрешение имен hostname и hosts

Для работы сервера 1с предприятия очень важно что бы его имя правильно преобразовывалось в IP. По хорошему мы должны иметь возможность с любого хоста в сети разрешить FQDN и краткое имя сервера, но просто для запуска нам достаточно, что бы имя хоста разрешалось в пределах только самого сервера.

Смотрим какой у нас hostname, если hostname получился похожим на localhost.localdomain обязательно меняем его в файле /etc/sysconfig/network на FQDN-имя сервера, после перезагружаем систему.

[root@1csrv ~]# hostname
1csrv.mydomain.local

Просматриваем содержимое файла /etc/hosts, если видим что-то похожее - можно сразу начинать править.

[root@1csrv ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Для сервера с именем 1csrv.mydomain.local файл hosts должен выглядеть следующим побразом.

[root@1csrv ~]# cat  /etc/hosts
127.0.0.1   localhost
192.168.20.164 1csrv.mydomain.local 1csrv

При этом 192.168.20.164 - адрес нашего сервера.

4. Пересоздаем конфигурацию по умолчанию

Если сервер 1с предприятия при запуске не находит свои конфигурационные файлы srvribrg.lst и 1CV8Reg.lst - он создает их заново. Этим мы и воспользуемся, чтобы сгладить проблемы возникшие при установке. Останавливаем сервер 1с предприятия:

[root@1csrv ~]# service srv1cv82 stop
Stopping 1C:Enterprise 8.2 server: Warning: server not running!
OK

Удаляем конфигурационные файлы:

[root@1csrv ~]# rm -f /home/usr1cv82/.1cv82/1C/1Cv82/srvribrg.lst
[root@1csrv ~]# rm -f /home/usr1cv82/.1cv82/1C/1Cv82/reg_1541/1CV8Reg.lst

Запускаем:

[root@1csrv ~]# service srv1cv82 start
Starting 1C:Enterprise 8.2 server: OK

Проверяем работоспособность:

[root@1csrv ~]# netstat -tlnp | grep :15
tcp        0      0 0.0.0.0:1560     0.0.0.0:*    LISTEN      1508/rmngr
tcp        0      0 0.0.0.0:1561     0.0.0.0:*    LISTEN      1658/ragent
tcp        0      0 0.0.0.0:1562     0.0.0.0:*    LISTEN      1665/rphost
tcp        0      0 0.0.0.0:1563     0.0.0.0:*    LISTEN      1665/rphost
tcp        0      0 0.0.0.0:1540     0.0.0.0:*    LISTEN      1658/ragent
tcp        0      0 0.0.0.0:1541     0.0.0.0:*    LISTEN      1508/rmngr

Если мы видим вывод подобный приведенному выше, значит все отлично сервер 1с предприятия запустился и работает.

3. Не могу подключиться к серверу 1с предприятия.

При попытке соединиться с сервером через консоль "Администрирование серверов 1с-предприятия" появляется "Ошибка соединения с сервером 1с предприятия 8.2: server_addr=tcp//1csrv.mydomain.local descr=Ошибка сетевого доступа к серверу".

1. Проверяем сетевое соединение с сервером. С компьютера где установлена консоль управления запускаем "ping 1csrv.mydomain.local", если пинги ходят значит переходим к следующему пункту.

2. Проверяем работает ли сервер 1с предприятия. Для этого на сервере выполняем следующую комманду:

[root@1csrv ~]# netstat -tlnp | grep :15
tcp        0      0 0.0.0.0:1560     0.0.0.0:*    LISTEN      1508/rmngr
tcp        0      0 0.0.0.0:1561     0.0.0.0:*    LISTEN      1658/ragent
tcp        0      0 0.0.0.0:1562     0.0.0.0:*    LISTEN      1665/rphost
tcp        0      0 0.0.0.0:1563     0.0.0.0:*    LISTEN      1665/rphost
tcp        0      0 0.0.0.0:1540     0.0.0.0:*    LISTEN      1658/ragent
tcp        0      0 0.0.0.0:1541     0.0.0.0:*    LISTEN      1508/rmngr

Если мы получили другой результат - значит сервер 1с предприятия не работает или работает не правильно и нам нужно обратиться к 2-ой части этого манула "Не запустился сервер 1с предприятия".

3. Настройка Iptables. Сервер 1с предприятия в большинстве случаев находится в пределах локальной сети и его вполне можно использовать с отключенным файрволом без большой угрозы безопасности. Отключаем iptables:

[root@1csrv ~]# chkconfig iptables off
[root@1csrv ~]# service iptables stop
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]

Для тех кто все-таки хочет заморочиться с правильной настройкой.

Консоли администрирования нужен доступ к агенту сервера (ragent) по порту 1540, а для создания базы понадобится еще и доступ к рабочим процессам по портам 1562-1591. Толстому клиенту нужен доступ к менеджеру сервера (rmngr) по порту 1541 и рабочим процессам порты 1562-1591.

Остальное зависит только от вашей фантазии. Для стандартно настроенного файрвола в CentOS набор разрешающих правили будет выглядеть приближенно так:

[root@1csrv ~]# iptables -t filter -I INPUT -p tcp --dport 1562:1591 -j ACCEPT
[root@1csrv ~]# iptables -t filter -I INPUT -p tcp --dport 1540 -j ACCEPT
[root@1csrv ~]# iptables -t filter -I INPUT -p tcp --dport 1541 -j ACCEPT
[root@1csrv ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

4. Postgesql - DATABASE не пригоден для использования

При создании базы данных через консоль администрирования, появляется сначала ошибка mvchar или fasttrun, а затем окно с ошибкой "DATABASE не пригоден для использования".
Ошибка создания информационной базы, DATABASE не пригоден для использования.

1. Проверяем установлен ли potgresql-contrib. Для этого запрашиваем список установленных пакетов PostgreSQL:

[root@1csrv ~]# rpm -qa | grep postgresql
postgresql-libs-9.0.3-3.1C.x86_64
postgresql-server-9.0.3-3.1C.x86_64
postgresql-9.0.3-3.1C.x86_64

Если в списке не нет postgresql-contrib - устанавливаем его из установочной директории и перезапускаем PostgreSQL:

[root@1csrv x86_64]# rpm -i postgresql-contrib-9.0.3-3.1C.x86_64.rpm
[root@1csrv x86_64]# service postgresql restart
Stopping postgresql service: [ OK ]
Starting postgresql service: [ OK ]

2. Проверяем пакеты libicu. Не редко PostgreSQL собирают на одной машине, а устанавливают потом на другую - жесткой зависимости от пакетов licicu нет, отсюда и ошибки. Запрашиваем список пакетов icu:

[root@1csrv ~]# rpm -qa | grep icu
icu-4.2.1-9.el6.x86_64
libicu-4.2.1-9.el6.x86_64

Если не находим в выводе icu и libicu, устанавливаем их.

[root@1csrv ~]# yum install icu libicu

3. Ссылки на libicu. Наверное самый наболевший в этой теме вопрос, операционных систем много, версий библиотек еще больше - и ссылки для каждого случая свои. Смотрим где лежат библиотеки, установленные в пакете libicu:

[root@1csrv ~]# rpm -ql libicu | egrep '(icudata|icui18|icuuc)'
/usr/lib64/libicudata.so.42
/usr/lib64/libicudata.so.42.1
/usr/lib64/libicui18n.so.42
/usr/lib64/libicui18n.so.42.1
/usr/lib64/libicuuc.so.42
/usr/lib64/libicuuc.so.42.1

Делаем соответствующие ссылки

[root@1csrv ~]# ln -s /usr/lib64/libicui18n.so.42 /usr/local/lib64/libicui18n.so.46
[root@1csrv ~]# ln -s /usr/lib64/libicudata.so.42 /usr/local/lib64/libicudata.so.46
[root@1csrv ~]# ln -s /usr/lib64/libicuuc.so.42 /usr/local/lib64/libicuuc.so.46

4. Удаление базы. Итак мы проделали все вышеперечисленные процедуры, но ошибка "DATABASE не пригоден для использования" все-равно появляется. Это связано с тем что базу мы уже создали использования пакетов contrib и libicu, и 1с не может с ней работать. Запрашиваем список баз и удаляем испорченную.

[root@1csrv x86_64]# su postgres
bash-4.1$ psql -l
List of databases
   Name    |  Owner   | Encoding |  Collation  |    Ctype    |   Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
 basa1     | postgres | UTF8     | ru_RU.UTF-8 | ru_RU.UTF-8 |
 postgres  | postgres | UTF8     | ru_RU.UTF-8 | ru_RU.UTF-8 |
 template0 | postgres | UTF8     | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
(4 rows)
bash-4.1$ dropdb basa1
bash-4.1$ exit
exit

Заключение.

Этот раздел создан что бы упростить жизнь тем кто сталкивается с проблемами при установке 1с предприятие под Linux. Если вы хотите дополнить или к примеру вашей неполадки не оказалось в статье пишите на форум Системное администрирование .


Иcтoчник
      

Связь | О проекте LinuxRSP | Реклама | О Linux
© 1999-2024 LinuxRSP