The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Раздел полезных советов: Установка сервера для 1С:Предприяти..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Установка сервера для 1С:Предприяти..."  +2 +/
Сообщение от auto_tips (ok), 07-Июн-10, 11:33 
Задача, казалось, несложной - необходимо установить выделенный сервер на новой версии Ubuntu, самостоятельно скомпилировать PostgreSQL из исходников, установить далее две версии серверной части 1С:Предприятия 8.1 и 8.2. Но, при решении задачи всплыло много нюансов.

Брать готовый бинарник от EterSoft'а оказалось неверным - общая компиляция под Mandriva, затем препарирование полученного через alien. Нарушается логика расположения файлов конфигурации и библиотек в Ubuntu, плюс отставание от текущего положения дел (уже вышла версия 8.4.4 PostgreSQL, а на ftp.etersoft.ru лежит лишь 8.4.2). Я понимаю, что лучшее враг хорошего, но хочется самому делать выводы, что лучшее, и что хорошее. Поэтому принято решение самостоятельно собрать PostgreSQL с необходимыми патчами.

Серверные части 1С:Предприятия также написаны в расчете на некий средне-универсальный дистрибутив Linux, но тут хотя бы честно. Все ставится в /opt, конфигурационные файлы прописываются в /etc/init.d и домашней директории пользователя usr1cv82(1). Да и изменить мы ничего не можем - доступа к исходникам нет.

Итак. Собираем сам сервер. Корпус, материнская плата, процессор, планки памяти, два одинаковых жестких диска... Я собрал программный RAID1 (зеркало) для надежности хранения (все-таки собирается для "продакшн"), но это совершенно не обязательно. Что обязательно - установка 64-битной версии, объем оперативной памяти для любой СУБД критичен (а 32-битные версии ограничены 4 гигабайтами), благо это сейчас совершенно недорого. Я установил 8 гигабайт. В общем, выбирайте сами. Привод оптических дисков в сервер ставить смысла нет никакого, загрузку можно провести через USB flash, а на будущее выделенному серверу привод совершенно ни к чему - все необходимое докачивается из репозитариев или копируется через утилиту scp.

Скачиваем образ сервера с http://www.ubuntu.com, там же подробнейшая инструкция как сделать загружаемую USB flash из-под любой операционной системы. Загружаемся, инсталлируем. Несколько обязательный комментариев. В принципе, ничего сложного в процессе инсталляции нет, все подробно расписано. Но!

* Выбираем обязательно русский язык, чтобы сервер автоматически настроился на использование русской локали (принципиально для первоначального запуска патченной версии PostgreSQL, да и системные сообщения на русском не лишние)

* Обязательное подключение к Интернету. По ходу дела, программа инсталляции несколько раз докачивает недостающие пакеты, плюс нам нужен доступ к репозитариям для дальнейшей работы.

* В момент попытки получения ip-адреса по dhcp процедуру лучше прервать (особенно если в это время в сети работает dhcp-сервер) или на следующем экране выбрать "Возврат". Все-таки сервер, должен иметь фиксированный адрес и имя. Задаем его самостоятельно.

* Из предлагаемого дополнительного софта ставим лишь OpenSSH, остальное после и самостоятельно.

После инсталляции перезагрузка, вытаскиваем "флэшку" (она больше не нужна), не забываем в BIOS'е установить AHCI - жесткие диски работают быстрее.

После новой установки первым делом:

  sudo apt-get install mc

Надо как-то работать в консоли. Затем:

  sudo visudo (или воспользуемся редактором из mc)

Добавляем директиву NOPASSWD:ALL для группы %admin, приведя последнюю строку к виду:

  %admin ALL=(ALL) NOPASSWD:ALL

Это нам необходимо, чтобы каждый раз не вводить свой пароль для sudo. Так как к консоли сервера кроме администратора никто доступ не имеет (теоретически), то и безопасность это не нарушает. Правилом хорошего тона считается разлогинится после работы. А доступ к консоли без знания пароля получить нельзя, так что если кто и узнает ваш пароль, то и команду sudo выполнит легко. Таким образом, ничего кроме дополнительной потери времени и нервов постоянное парольное подтверждение не дает.

Обновляем установку:

   apt-get update
   apt-get upgrade

Перезагружаемся, потому как ядро обновится на более свежее.
Устанавливаем NTP-сервер. Время на всех серверах должно быть синхронизировано, иначе в логах потом не разберешься.

   apt-get install ntp

В /etc/ntp.conf исправляем строку "server ntp.ubuntu.com" на вашу. Если в локальной сети есть уже работающий сервер времени (у нас это сервер, отвечающий за proxy), то укажите его адрес. Через некоторое время сервер синхронизирует время. Если нет, оставьте, пусть компании Canonical будет приятно.

Подготовительные работы окончены. Приступаем к сборке. Скачиваем с http://v8.1c.ru/overview/postgres_patches_notes.htm три патча:
   1c_FULL_84-0.19.2.patch
   postgresql-1c-8.4.patch
   applock-1c-8.4.1.patch

Пусть вас не смущает то, что патчи для версии 8.4.1 - они отлично становятся и на более старшие версии PostgreSQL (в рамках версии 8.4). Все минорные исправления не затрагивают того, что патчит фирма "1С".

На сервере в домашнем каталоге пользователя-администратора создаем директорию "1С". Копируем в нее любым удобным для нас способом (я использовал scp со своей рабочей станции, можно перекинуть через собственный ftp или через "флэшку") эти три патча. Переименовываем их, добавляя перед названием «20-», «21-» и «22-», т. е. приводим их к виду: 20-1c_FULL_84-0.19.2.patch, 21-postgresql-1c-8.4.patch, 22-applock-1c-8.4.1.patch

Переходим в директорию "1С" и скачиваем туда исходники PostgreSQL:

   apt-get source postgresql

После скачивания архивы автоматически распакуются, будут наложены специфичные для Ubuntu патчи (что очень хорошо, так как итоговая сборка будет "родной"). Входим в этот каталог. Затем копируем наши патчи в каталог "/debian/patches/". Далее нам предстоит исправить три файла, ответственных за правильную сборку пакета. Все три файла содержаться в каталоге "debian".

Файл "changelog". Отвечает за правильное наименование пакетов после сборки. Добавляем туда следующие строки в начало файла любым текстовым редактором (например, через mc):

  postgresql-8.4 (18.4.4-ailant-0ubuntu10.04) lucid; urgency=low
  * Apply 1C patch for PostgreSQL (from 8.4.1 version)
    - add mchar, fulleq, fasttrun
  -- Igor Vershinin <ivershinin@ailant.com.ru>  Fri, 04 Jun 2010 00:53:03 +0400

Версию устанавливаем как 18.4.4, чтобы в дальнейшем она самостоятельно не обновилась при апдейте системы. Если будут наши исправления, то всегда возможно скачать новые исходники и повторить с ними операцию, описанную в этой статье, увеличив номер сборки (например,  18.4.4-ailant-1ubuntu10.04).

Следующий файл "control". Необходимо добавить зависимость от библиотеки "libicu42" (требуется для патча от "1С"). В секции "Build-Depends" (в начале файла) в конце списка добавляем ", libicu-dev".
Целиком строка будет выглядеть вот так:

   bison, flex, docbook-utils, openjade, docbook, libicu-dev

И последний файл "postgresql-contrib-8.4.install". В него необходимо добавить строки с именами 1С-овских модулей: mchar, fulleq и fasttrun. После строк:

  usr/lib/postgresql/8.4/lib/pg_stat_statements.so
  usr/lib/postgresql/8.4/lib/citext.so
  usr/lib/postgresql/8.4/lib/btree_gin.so

надо добавить:

  usr/lib/postgresql/8.4/lib/mchar.so
  usr/lib/postgresql/8.4/lib/fulleq.so
  usr/lib/postgresql/8.4/lib/fasttrun.so

На этом операцию по адаптации можно считать законченной. У нас получился правильно "патченный", родной для операционной системы исходник. Аналогично можно подготовить версию для любой debian-совместимой ОС.

К сожалению, исправления трех файлов (кроме последнего) нельзя сделать через patch-файл в автоматическом режиме. Патчи применяются уже после того, как скачиваются зависимости и определяется имя пакета.

Готовые патчи и исправленные файлы можно взять также на нашем ftp-сайте ftp://ftp.ailant.com.ru/pub/soft/postgresql-8.4.4-1C-ubuntu/ . Там же в каталоге bin лежит собранный пакет PostgreSQL для Ubuntu 10.04 (x86_64). Это если кому не хочется самостоятельно собирать.

Компиляция может пройти двумя способами. Оба несложных. В первом случае идем "в лоб" и компилируем в рабочей системе, но куча зависимостей будет загружена, что не есть хорошо, для "продакш"-системы. Поэтому воспользуемся пакетом "pbuilder". В этом случае компиляция будет проходить в специально созданном chroot-окружении, и все изменения будут проходить в нем, не трогая рабочую систему. Более подробно об этом можно почитать в https://wiki.ubuntu.com/PbuilderHowto

   apt-get install pbuilder cdbs

Все, что ему необходимо, он сам вытянет по зависимостям. Второй пакет необходим для компиляции. Далее:

   pbuilder create

Создаем специальное окружение для компиляции. В этот момент много скачивается из репозиториев. У меня с первого раза почему-то не сработало, был сбой и pbuilder закончил работу с ошибкой. Я не стал разбираться отчего это произошло, просто повторно выполнил команду создания.

В дальнейшем рекомендуется перед сборкой давать команду:

   pbuilder update

для обновления окружения новыми пакетами.

Переходим в каталог исходников и

   pdebuild

Сборка началась. В первый раз по зависимостям будет вытянуто около 500 мегабайт, надо быть к этому готовым. Либо собирать на unlim-канале (дома, например). В дальнейшем пакеты кешируются. У нас используется пакет apt-proxy, который также умеет это делать. Для предприятий, где работает не один сервер, очень рекомендую.

Сборка проходит ровно и спокойно. По окончанию в каталоге "/var/cache/pbuilder/result" будут лежать собранные пакеты.

Продолжаем. Необходимо установить несколько пакетов для поддержки работы PostgreSQL:

  apt-get install postgresql-common postgresql-client-common libicu42 libossp-uuid16

Затем, собственно, ставим свежесобранный PostgreSQL:

  dpkg -i libpq5_18.4.4-ailant-0ubuntu10.04_amd64.deb
  dpkg -i libpgtypes3_18.4.4-ailant-0ubuntu10.04_amd64.deb
  dpkg -i postgresql-client-8.4_18.4.4-ailant-0ubuntu10.04_amd64.deb
  dpkg -i postgresql-8.4_18.4.4-ailant-0ubuntu10.04_amd64.deb
  dpkg -i postgresql-contrib-8.4_18.4.4-ailant-0ubuntu10.04_amd64.deb

Остальные пакеты не нужны для работы "1С:Предприятия 8". В этот момент сервер СУБД будет запущен, также будет проведена первичная инициализация базы данных. Осталось сделать несколько штрихов.
Проверим, чтобы PostgreSQL всегда запускался после перезагрузки:

  update-rc.d postgresql-8.4 defaults

Сделаем два симлинка, без которых «1С:Предприятие» не сможет работать с СУБД:

   ln -s /usr/lib/locale/en_US.utf8 /usr/lib/locale/en_US
   ln -s /usr/share/locale/en /usr/share/locale/en_US

Временно (правда, у меня осталось на постоянно) исправим правила доступа к СУБД. В конфигурационном файле "/etc/postgresql/8.4/main/pg_hba.conf" исправим в строке "host all all 0.0.0.0/0" md5 на trust. На момент начальной отладки так гораздо проще, в дальнейшем (после запуска всей системы) выбирайте сами уровень собственной защиты.

Все PostgreSQL собран и запущен. Устанавливаем "1С:Предприятие". Так как в настоящее время версия 8.2 является основной, то начнем с нее. После установим версию 8.1 для поддержки старых конфигураций (которые еще не перевели на новую платформу).

Переписываем с диска ИТС (скачиваем с сайта 1С) последнюю версию (на момент написания статьи это 8.2.11.229) для архитектуры debian x86_64 (ведь именно этот сервер мы ставили). Копируем на нашем сервере в папку «1С» в домашней директории. Последовательно запускаем:

   dpkg -i 1c-enterprise82-common_8.2.11-229_amd64.deb
   dpkg -i 1c-enterprise82-server_8.2.11-229_amd64.deb

В принципе, достаточно. Пакеты "-nls" - это языковая поддержка. Нам она не нужна, русский язык есть в основной поставке. Пакет "-ws" - это веб-сервисы. Если нужны, то поставьте. Мне пока без надобности.
После инсталляции надо проверить наличие пользователя user1cv82 в файле /etc/passwd и его домашнего каталога в /home. Именно в нем и будут храниться специфические параметры запуска сервера. Дальше необходимо доставить несколько пакетов:

   apt-get install imagemagick msttfcorefonts libgsf-1-114 texlive-binaries

Проверяем все ли библиотеки установлены:

   /opt/1c/v8.2/x86_64/utils/config_server

Утилита должна отработать без сообщений. Если написала, что что-то не установлено, надо доставить. Обычно она указывает не на название пакетов, а на недостающие файлы. Узнать в каком они пакете можно через "apt-file search".

Делаем возможность запуска после перезагрузки и запускаем:

   update-rc.d srv1cv82 defaults
   invoke-rc.d srv1cv82 start

Должно быть "ОК". Если нет, то скорее всего необходимые порты уже заняты. Надо проверить чем. Дальше проверяем, что все процессы запущены нормально:

   ps aux | grep 1c

От имени пользователя "usr1cv82" должно быть запущено три процесса: ragent, rmngr и rphost. После имен процессов идут номера портов, на которых они работают. Если процесса не три, а один (такое почему-то иногда бывает, но только при первоначальном запуске), то делаем:

   invoke-rc.d srv1cv82 stop

Удаляем каталог ".1cv82" в домашней директории пользователя usr1cv82. И перезапускаем сервер заново. Должно стать все нормально.
Аналогично устанавливаем и сервер "1С:Предприятия 8.1". Но с небольшими изменениями. Во-первых, из-за ошибки скрипта домашний каталог пользователя "usr1cv81" будет установлен неверно, необходимо исправить его, отредактировав "/etc/passwd" и исправив путь на "/home/usr1cv81", по аналогии с пользователем "usr1cv82". Затем создать собственно сам каталог в директории "home" и установить на него владельца "usr1cv81" и группу "grp1cv81". Во-вторых, необходимо исправить порты, на которых будет работать сервер. Редактируем "/etc/init.d/srv1cv81", убирая комментарии со строк и добавляя номера:

   SRV1CV8_PORT=11540
   SRV1CV8_REGPORT=11541
   SRV1CV8_RANGE=11560:11691

т. е. мы использовали порты на 10000 больше, чем порты по умолчанию. Дальше запускаем сервер, проверяем, если надо удаляем директорию ".1cv81" в домашнем каталоге пользователя usr1cv81.

Потом тестовая перезагрузка. Готово. На выделенном сервере работает самостоятельно собранная версия PostgreSQL, а также два сервера "1С:Предприятия" версий 8.1 и 8.2.

Работоспособность проверяется с любой windows-машины, подключением консоли серверов "1С:Предприятия" к нашему серверу на заданный порт (1540 или 11540).

Кстати, при использовании в конфигурациях "1С:Предприятия 8" управляемых блокировок, скорость работы СУБД PostgreSQL в ряде случаев бывает даже выше, чем у MS SQL (под которую изначально и был заточен 1С). Но это все относится к правильной оптимизации запросов, которые в версии 8.2 можно очень гибко настраивать.

И последнее. Несмотря на то, что сейчас все наши сервера работают под Ubuntu, раньше использовалась Fedora. Пример сборки для нее (и похожих дистрибутивов) есть в каталоге ftp://ftp.ailant.com.ru/pub/soft/postgresql-8.3.7-1C-fedora/ . Там лежит как пример готовый spec-файл для сборки. Собирается все через mock (http://fedoraproject.org/wiki/Projects/Mock).


URL:
Обсуждается: http://www.opennet.dev/tips/info/2384.shtml

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от netcemail (ok), 07-Июн-10, 11:33   +/
сразу вопросы:

1. почему ubuntu а не debian

2. почему ушли с fedora

3.
>Брать готовый бинарник от EterSoft'а оказалось >неверным - общая компиляция под
>Mandriva, затем препарирование полученного через >alien. Нарушается логика
>расположения файлов конфигурации и библиотек в >Ubuntu

можно поподробнее, что значит общая компиляция ?
что значит препарирование через alien


Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #6

2. Сообщение от metallic (?), 07-Июн-10, 13:29   +/
А почему НЕ убунта?
Я бы на месте автора тоже выбрал бы 10.04, потому как ЛТС(читай тот же дебиан), но релиз новее, чем у 5-го дебиана.
Ви таки имеете что-то против убунты?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #15

3. Сообщение от NicK (?), 07-Июн-10, 13:32   +/
>почему ubuntu а не debian

а почему нет? вероятно, во-первых, с ней человеку работать привычнее, во-вторых: версии пакетов в ubuntu актуальнее.

>почему ушли с fedora

см. выше.
да и вообще, целесообразность использования Fedora на сервере - спорный вопрос.

>можно поподробнее, что значит общая компиляция ?

Компиляция всего необходимого ПО, конкретно под Mandriva

>что значит препарирование через alien

http://ru.wikipedia.org/wiki/Alien

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #5

4. Сообщение от Ma_X_X (?), 07-Июн-10, 13:51   +/
Наверное, это я что-то неправильно делаю, но у меня 1С категорически отказывается работать с postgresql версии 8.4 (пробовал 8.4.1 от 1С и Etersoft). При этом с 8.3.3 и 8.3.8 она дружит. Может, есть какой-то секрет?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8

5. Сообщение от netcemail (ok), 07-Июн-10, 14:29   +/
>Компиляция всего необходимого ПО, конкретно под Mandriva

т.е. сборка postgres с патчами 1с-ов от ethersoft делается под mandriva, а после alien-ом адаптируется для других дистров ?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #7

6. Сообщение от Игорь Вершинин (?), 07-Июн-10, 17:09   +/
1. Убунта почему? Во-первых, LTS, во-вторых, используется в коммерческом применении у импортных. Т.е., теоретически, серверная часть должна быть стабильная. Дебиан, при всей к нему любви, не коммерческий проект.
2. Федора очень любит экперименты. Чудеса бывают после обновлений. Помнится Squid отказывался с LDAP работать после обычного обновления. Через несколько дней лишь поправили.. Не "продакшн". Опять-таки, Самба в боевом режиме в сборке на Федоре иногда очень сильно "задумывается". Возможно из-за утечек памяти, возможно нет. Разбираться во всем этом лень, да и смысл? Наверное, надо было в свое время уйти на CentOS, но как-то не срослось. А по поводу Дебиан/Убунту в качестве серверов в основном положительные отзывы. Это из того, что доступно.
3. Как я понял в Etersoft (если ошибаюсь, то поправьте), компилируют постгрес под Мандривой (или там Альтом), затем его через alien трансформируют для дебиан-похожих дистрибутивов. Что не верно. Проблемы с зависимостями, локальными (от майнтейнеров) дистрибутивоориентированными патчами и расположением файлов. Все-таки когда зоопарк, это только детям хорошо на животных смотреть. Да и не успевают ребята из Этерсофта делать. Понимаю, ибо как на общественных началах. Поэтому сам.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

7. Сообщение от Игорь Вершинин (?), 07-Июн-10, 17:14   +/
>>Компиляция всего необходимого ПО, конкретно под Mandriva
>
>т.е. сборка postgres с патчами 1с-ов от ethersoft делается под mandriva, а
>после alien-ом адаптируется для других дистров ?

Да, но только Этерсофтом. В самом 1С похоже готовят все на RedHat или CentOS. Очень уж похоже по иногда старым библиотекам и общей компановке пакетов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5

8. Сообщение от Игорь Вершинин (?), 07-Июн-10, 17:17   +/
>Наверное, это я что-то неправильно делаю, но у меня 1С категорически отказывается
>работать с postgresql версии 8.4 (пробовал 8.4.1 от 1С и Etersoft).
>При этом с 8.3.3 и 8.3.8 она дружит. Может, есть какой-то
>секрет?

Секрем прост. Проблема в связке. В 1С настойчиво рекомендуют версию 8.4.3, под нее уже патчи сделаны. Отличия прописаны у меня в read.me по ссылке ftp://ftp.ailant.com.ru/pub/soft/postgresql-8.4.4-1C-ubuntu/

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

9. Сообщение от Игорь Вершинин (?), 07-Июн-10, 17:48   +/
Пытался исправить в статье, но не получилось. Автор не я, как выяснилось. :-)

Компилировать PostgreSQL необходимо с ключом "--disable-integer-datetimes", иначе при загрузке данных в СУБД через 1С:Предприятие 8 может вылететь ошибка про timestamp. Плюс вышло обновление патча 0.19.3 от 1С с небольшим инзменением,вместо (строка 2118):
    +LANGUAGE C RETURNS NULL ON NULL INPUT IMMUTABLE;
используется
    +LANGUAGE C RETURNS NULL ON NULL INPUT VOLATILE;

Все исправленные файлы на ftp://ftp.ailant.com.ru/pub/soft/postgresql-8.4.4-1C-ubuntu/

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #38

10. Сообщение от Fmpdfs (?), 08-Июн-10, 00:34   +/
А как насчет веб сервиса для 8.2? Есть мануальчики по подъему сиго чуда?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #11

11. Сообщение от luzers (?), 08-Июн-10, 09:02   +/
родная дока вполне адекватно всё описывает.
шаманств под убунтой (правда еще под 9х) не было.

автору спасибо за статью-пакетик. координаты оставил бы. или может хомяк какой есть?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #12

12. Сообщение от luzers (?), 08-Июн-10, 09:03   +/
а! самое то главное автор не рассматривает! это установка ключа)
поэтому с веб-мордой могут быть трудности при использовании статьи)
хотя "толстый" клиент нормально работает с установкой по статье, без использования ключей.
как в последних релизах 1С не знаю - не слежу, может уже эту лавочку прикрыли.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

13. Сообщение от BoOgieemail (ok), 08-Июн-10, 10:01   +/
Да, про ключи не слова. Раньше вроде была грабля, что сервер 1С требовал ключ при более чем 12 клиентских подключений. Локальные ключи (а если еще и в виртуалке) всегда дико глючат, эмуляторы тока под мастдаями. Кто-нить в курсе как сейчас ситуевина обстоит?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #14

14. Сообщение от Игорь Вершинин (?), 08-Июн-10, 10:39   +/
Сейчас также - 12 пользователей может работать без лицензирования сервера. Дальше нет. Но с ключом просто все. Втыкаете, он и работает... Проблемы бывают с клиентскими лицензиями. Там надо ставить драйвера и hasplm с сайта Алладина....
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #16

15. Сообщение от testeruser (?), 08-Июн-10, 10:52   +/
Да не тот же дебиан. Дебиан и убунту это два разных дистрибутива и работают они по разному. И в качестве подобного сервера я бы также выбрал Debian, а не убунту.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #29

16. Сообщение от roma2000 (?), 08-Июн-10, 14:26   +/
Тут вы не правы. Ключу необходим драйвер, причем этот драйвер еще надо умудриться поставить. Без драйвера 13му пользователю при входе в базу 1с будет говорить про "не нашла ключ, работать не буду".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #17, #24

17. Сообщение от BoOgieemail (ok), 08-Июн-10, 14:50   +/
В последний раз когда пробовал 1С на линях возня с хаспами была та еще. Кто-нить пробовал СЕТЕВОЙ ключ на виндовой машине (аки сервер лицензий) с подключенным к нему линуксовым 1С сервером?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #18

18. Сообщение от roma2000 (?), 08-Июн-10, 15:04   +/
>В последний раз когда пробовал 1С на линях возня с хаспами была
>та еще. Кто-нить пробовал СЕТЕВОЙ ключ на виндовой машине (аки сервер
>лицензий) с подключенным к нему линуксовым 1С сервером?

Оно только в таком виде у меня и заработало. Под виндами hasplm, а под пингвином оно называется aksusbd и нужно только если в 1се работает больше 12 человек.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #19, #20

19. Сообщение от luzers (?), 08-Июн-10, 19:54   +/
уважаемый! а может быть порадуете небольшой заметочкой - как это сделать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #27

20. Сообщение от BoOgieemail (ok), 08-Июн-10, 21:59   +/
Поддерживаю просьбу, ибо в свое время я так и не дошел до полной и правильной работоспособности, т.к. поджимали обстоятельства поэтому было особо не до экспериментов (раскатал на виндях), однако в скором времени собираюсь вернуться к данному вопросу и лишняя инфа не помешала бы =)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18

21. Сообщение от chemtech (ok), 09-Июн-10, 05:58   +/
Хоть и 1С и не ставил, но статья понравилась.
Понятливо написана.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #22

22. Сообщение от sluge (ok), 09-Июн-10, 14:59   +/
согласен, интересно почитать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

23. Сообщение от sluge (ok), 09-Июн-10, 15:04   +/
мне как старому редхатовцу непонятно, зачем собирать постгрес, потом делать из него деб пакеты и уже их инсталять. make install уже немодно?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #25, #26, #28, #32

24. Сообщение от sav (??), 09-Июн-10, 15:45   +/
Особенно мудрить и не придется, используем драйвер ftp://ftp.aladdin.com/pub/hasp/srm/Linux/HASP_SRM_LINUX_3.50... (Инструкция внутри), вставляем ключ, перезапускаем и все!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

25. Сообщение от Filosofemail (ok), 09-Июн-10, 15:45   +/
Во-первых установка из исходников в чистом виде - зло. Как там с удалением/обновлеинеим?
Во-вторых, готовый пакетик с уже наложенными патчами - удобней, чем исходники+файлы патчей.
В-третьих облегчается повторный деплоймент.

Более прошаренные товарисчи могут указать на более серьёзные технические преимущества.
Кста, под редхатом по прежнему рекомендуется собирать пакетики перед установкой. К тому же их сам yum и разруливает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

26. Сообщение от Аноним (-), 09-Июн-10, 16:11   +/
менеджер пакетов как минимум отслеживает перезапись файлов, make install же Вам их молча затрёт.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

27. Сообщение от zerotemail (ok), 11-Июн-10, 07:48   +/
автору респект, статья правильная :)
.
если ключ нужен локально, то что там ставить ? в своё время писал защиту аладиновским ключём под Linux

с сайта аладина качается драйвер, насколько я помню он есть в виде rpm и в виде tar
разворачивается, запускается - там же приложены скрипты запуска для размещения в /etc/init.d
.
дальше при установке ключа в машину он должен подхватиться, о чём будет запись в /var/log/messages
.
это всё. прикладной софт линкуется с поставляемыми аладином библиотеками с API интерфейсом, и просто использует вызовы этих библиотек, которые уже обращаются к драйверу
.
да, при запуске дров аладина запускается как локальный драйвер, так и "отдатчик" ключа в сеть
.
Удачи

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

28. Сообщение от zerotemail (ok), 11-Июн-10, 08:00   +/
дистрибутивы от redhat не зря является пакетно - ориентированными
.
хотя для разовых работ я тоже грешу ручной установкой, правда в /usr/local, но для инфраструктуры хотя бы из нескольких машин правильнее собрать пакет. Иначе может поплыть тема зависимостей и обновлений, и уследить за всем будет тяжело
.
удачи
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

29. Сообщение от liveder (ok), 11-Июн-10, 09:06   +/
+1
Debian наше все ;)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

31. Сообщение от Timuremail (??), 22-Июн-10, 07:31   +/
На счет легкости сборки я бы не сказал что так уж легко собралась. Главная проблема была в том что потребовалось увеличить SHMMAX раз в 10 от стандартного размера. Без этого постоянно вылетала при сборке. Прописал в /etc/sysctrl.conf
kernel.shmmax = 33554432.
Ответить | Правка | Наверх | Cообщить модератору

32. Сообщение от Timuremail (??), 22-Июн-10, 08:01   +/
В смысле бакапа не совсем удобно каждый раз собирать если слетит, тиражировать тоже неудобно. Бакапить надо только уникальные данные. Разработал для основной работы потом можно в порядке шабашки хошь конкурентам настроить хошь просто конторкам. Опять же башли на печеньку в пятницу.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

33. Сообщение от Алексей (??), 07-Июл-10, 09:50   +/
Мне кажется ошибка:
apt-get install msttcorefonts, а не msttfcorefonts
Ответить | Правка | Наверх | Cообщить модератору

34. Сообщение от Макс (??), 30-Июл-10, 06:32   +/
Подскажите пожалуйста в чем может быть проблема. При попытки создания БД в Кластере 1с сервер, вылетает ошибка: "Ошибка соединения с рабочим процессом. Ошибка загрузки компоненты ext."
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #36

35. Сообщение от Sinder (ok), 11-Авг-10, 07:05   +/
Столкнулся вот с такой ошибкой при сборке пакета:

Setting up fakeroot (1.14.4-1) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode.
W: no hooks of type A found -- ignoring
I: Running /usr/bin/dpkg-buildpackage -rfakeroot -us -uc ${DEBBUILDOPTS}
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor):
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor):
parsechangelog/debian: warning:     debian/changelog(l6): found start of entry where expected more change data or trailer
LINE: postgresql-8.4 (8.4.4-2) unstable; urgency=low
parsechangelog/debian: warning:     debian/changelog(l6): found eof where expected more change data or trailer
dpkg-buildpackage: error: unable to determine source changed by
dpkg-buildpackage: source package postgresql-8.4
dpkg-buildpackage: source version 18.4.4-ailant-1ubuntu10.04
W: no hooks of type C found -- ignoring
I: Copying back the cached apt archive contents
I: unmounting /var/cache/pbuilder/ccache filesystem
I: unmounting /root/1c filesystem
I: unmounting dev/pts filesystem
I: unmounting proc filesystem
I: cleaning the build env
I: removing directory /var/cache/pbuilder/build//16648 and its subdirectories

Не смог разобраться, убрал изменения версии в changelog, и все собралось нормально. Базы развернулись, полет нормальный.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #37

36. Сообщение от Arkadyemail (??), 16-Авг-10, 14:51   +/
Пробую поставить, собрал все, устанавливаю postgresql-contrib-8.4_18.4.4-ailant-0ubuntu10.04_i386.deb и он при установке выдает, что он зависит от пакета libxslt1.1 , который не установлен. Этот пакет важен? Где его можно скачать/получить?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

37. Сообщение от TopSergeyemail (?), 19-Сен-10, 10:18   +/
Тут всё просто.
Когда копируешь изменения с сайта в файл "changelog" нафиг слетают отступы...
Их необходимо проставить по аналогии со следующими записями.
У меня получилось так:
<нет пробелов>postgresql-8.4 (18.4.4-ailant-0ubuntu10.04) lucid; urgency=low
<перенос строки>
<2 пробела>* Apply 1C patch for PostgreSQL (from 8.4.1 version)
<2 пробела>- add mchar, fulleq, fasttrun
<1 пробел>-- Igor Vershinin <ivershinin@ailant.com.ru>  Fri, 04 Jun 2010 00:53:03 +0400

У тебя в ошибке говориться:
error: unable to determine source changed by
Скорее всего перед последней строкой пробел забыл вставить

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #40

38. Сообщение от TopSergeyemail (?), 19-Сен-10, 10:40   +/
>[оверквотинг удален]
>Компилировать PostgreSQL необходимо с ключом "--disable-integer-datetimes", иначе при загрузке данных в СУБД
>через 1С:Предприятие 8 может вылететь ошибка про timestamp. Плюс вышло обновление
>патча 0.19.3 от 1С с небольшим инзменением,вместо (строка 2118):
>    +LANGUAGE C RETURNS NULL ON NULL INPUT IMMUTABLE;
>
>используется
>    +LANGUAGE C RETURNS NULL ON NULL INPUT VOLATILE;
>
>
>Все исправленные файлы на ftp://ftp.ailant.com.ru/pub/soft/postgresql-8.4.4-1C-ubuntu/

Для таких же тугодумов, как и я поясняю:
Чтобы скомпилировать с ключом "--disable-integer-datetimes" нужно
открыть файл "rules" и найти там строку:
"--enable-integer-datetimes".
После чего поправить её с особым цинизмом...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

39. Сообщение от TopSergeyemail (?), 23-Сен-10, 23:47   +/
Ещё 1 момент.
У меня на Ubuntu 10.04 x64
Не захотел сразу устанавливаться пакет: texlive-binaries
Ошибка(в кратце): dpkg: не удалось обработать параметр tex-common (--configure):
подпроцесс установлен сценарий post-installation возвратил код ошибки 1

Решение нашёл тут: https://bugs.launchpad.net/ubuntu/+source/tex-common/+bug/56...

Оказалось необходимо было установить пакет texlive-base вручную:
sudo apt-get install texlive-base

Ответить | Правка | Наверх | Cообщить модератору

40. Сообщение от immelmann1337 (ok), 26-Сен-10, 10:35   +/
>[оверквотинг удален]
>У меня получилось так:
><нет пробелов>postgresql-8.4 (18.4.4-ailant-0ubuntu10.04) lucid; urgency=low
><перенос строки>
><2 пробела>* Apply 1C patch for PostgreSQL (from 8.4.1 version)
><2 пробела>- add mchar, fulleq, fasttrun
><1 пробел>-- Igor Vershinin <ivershinin@ailant.com.ru>  Fri, 04 Jun 2010 00:53:03 +0400
>
>У тебя в ошибке говориться:
>error: unable to determine source changed by
>Скорее всего перед последней строкой пробел забыл вставить

Доброго времени суток. дело в том, что у меня возникла похожая ошибка. Если Вы обратите внимание, то проблема возникает не в том, что было внесено в начале файла, а в 16 строке:

parsechangelog/debian: warning:     debian/changelog(l6): found start of entry where expected more change data or trailer
LINE: postgresql-8.4 (8.4.4-2) unstable; urgency=low
parsechangelog/debian: warning:     debian/changelog(l6): found eof where expected more change data or trailer
dpkg-buildpackage: error: unable to determine source changed by

То есть в том, что было написано до нас... С виду форматирование такое же как в нашем блоке (1), и в блоках, которые следуют за 2 (3-n).

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

41. Сообщение от immelmann1337 (ok), 27-Сен-10, 16:15   +/
Спасибо, TopSergey, тоже была такая вещь.
Возник еще один вопрос. Ситуация такая: установил все как указано в статье, за исключением PostgreSQL - поставил из пакетов, указанных автором. Стоят 8.2.12.229 и 8.1.15 - после установки теперь требует клиент только 8.2.12. Если остановить, или удалить srv1cv82, то пишет, что удаленный компьютер отверг подключение (socket error 10061). От srv1cv81 тоже есть все три процесса: ragent, rmngr и rphost.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42

42. Сообщение от Владимир (??), 07-Окт-10, 10:31   +/
Инет через прокси

У меня это неработал pbuilder create.

Прописал так:

pbuilder create -- http-proxy http://proxy.yoyodyne.com:18023/

или можно в /etc/pbuilder-config.sh
добавить строку http-proxy = http://proxy.yoyodyne.com:18023/

тогда команда pbuilder create у меня заработала

Но вылезла проблема которую немогу победить  
1. запускаю pbuilder create, все проходит на ура
2. запускаю pdbuild он начинает шуршать после чего говорит что не может стянуть с сайта ru.archive.ubuntu.com пакеты т.е. прокси не видит  apt wget настроены.

а для команты pdbuild параметра прокси нет  что делать?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #46

43. Сообщение от seregapermskiyemail (?), 14-Окт-10, 22:16   +/
А у меня выдает сообщение Patch not applied. Как успел заметить - применились только 20 и 21 патчи. Postgres установился 8.4.5
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #47

44. Сообщение от пользовательemail (?), 03-Ноя-10, 08:14   +/
Компилировать PostgreSQL необходимо с ключом
"--disable-integer-datetimes"

а как это сделать? неподскажете комманду?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #50

45. Сообщение от ncux (??), 14-Ноя-10, 08:43   +/
Автору огромное СПАСИБО! Очень хороший и простой для понимания материал.
Правда, как было сказано выше, необходима замена texlive-base
В общем я делал так:

apt-get install tex-common texlive-base texlive-binaries

aptitude install ttf-mscorefonts-installer

в остальном все как по маслу )

Ответить | Правка | Наверх | Cообщить модератору

46. Сообщение от ncux (??), 14-Ноя-10, 09:01   +/
Может быть задать прокси для всей системы?
В терминале из-под root
export http_proxy=http://user:pass@ip_proxy:port
если нет авторизации, то
export http_proxy=http://ip_proxy:port
или править /etc/apt/apt.conf на наличие тех же строк по нужным протоколам
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42

47. Сообщение от kole (??), 20-Дек-10, 17:02   +/
> А у меня выдает сообщение Patch not applied. Как успел заметить -
> применились только 20 и 21 патчи. Postgres установился 8.4.5

Почти такая же проблема. Только вообще не один патч не применился.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43 Ответы: #48, #49

48. Сообщение от kole (??), 20-Дек-10, 17:06   +/
И может кто нибудь подскажет как это поправить?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

49. Сообщение от dmsob (?), 26-Фев-11, 17:52   +/
тоже не один патч не применился :-( что делать то?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

50. Сообщение от TopSergey (?), 06-Июн-11, 14:34   +/
Для таких же тугодумов, как и я поясняю:
Чтобы скомпилировать с ключом "--disable-integer-datetimes" нужно
открыть файл "rules" и найти там строку:
"--enable-integer-datetimes".
После чего поправить её с особым цинизмом...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44

51. Сообщение от Сандецкий Александрemail (?), 02-Апр-12, 14:21   +/
> Что обязательно - установка 64-битной версии, объем оперативной

памяти для любой СУБД критичен (а 32-битные версии ограничены 4 гигабайтами)

Катастрофически неверно. Объем памяти для одного процесса - да, но т.к. СУБД - суть множество процессов, то это ограничение несущественно, а само ядро увидит любое количество памяти более 4Гб.

А вот указание "обязательно 64бита" не совсем корректно после изменения ценовой политики 1С в сторону удвоения цены за "битность" сервера. Это конечно новшество, которое сродни демотиваторам "угадай страну по фотографии".
И именно в силу цены - более актуально рассмотреть вопрос об установке 32битного сервера 1С. Причем интересен вариант "микс-установки" (32-битный сервер 1С + 64-битная ОС + 64-битная СУБД (на том-же хосте).
> в следующем куске текста:

1c_FULL_84-0.19.2.patch
postgresql-1c-8.4.patch
applock-1c-8.4.1.patch

Патч с припиской FULL не включает-ли все прочие патчи?! (Если нет, то я чего-то не понимаю в именовании патчей)

> apt-get install msttfcorefonts

В инструкции 1С сказано что надо apt-get install ttf-mscorefonts-installer
Хотя думаю, от способа установки шрифтов результат не сильно поменяется.

> Это нам необходимо, чтобы каждый раз не вводить свой пароль для sudo.

Это очень спорно.

ЗЫ: простите занудство.
ЗЗЫ: Ссылки на айлантовский сервер - мертвы. К сожалению. А статья хорошая, сейчас как раз по ней пытаюсь заставить все это работать. Но.... не все так хорошо. Точнее - не всегда получается хорошо. В частности - были серьезные затыки с запуском ragent. Этот этап сейчас пройден, но уперся в доступность некоторых портов (несмотря на то что файрвол их пропускает и процессы запущены)

Ответить | Правка | Наверх | Cообщить модератору

52. Сообщение от Сандецкий Александрemail (?), 02-Апр-12, 14:33   +/
> apt-get source postgresql

Предварительно не забыв написать apt-get install dpkg-dev иначе скачивание исходников завершиться ошибкой распаковки.

> Версию устанавливаем как 18.4.4

не очень удачное решение. Очередной билд сервера 1С либо какое-либо другое ПО может захотеть проверить версию на совместимость .... и вот тут будет проблема. Куда более элегантно - поставить блокировку на версию пакета в используемом менеджере пакетов (apt, yum ...). Это будет более наглядно и более управляемо.

Ответить | Правка | Наверх | Cообщить модератору

53. Сообщение от Александрemail (??), 07-Май-20, 22:00   +/
Есть установленный (и запускающийся успешно) сервер 1с 8.3.13.1865 на centos 6, установлен там же postgresql версии 8.4.20 (чистая сборка, не специальная от 1с). Клиент, как известно, сходу не подключается к серверу, вылазит пресловутая ошибка, мол, "mchar не найден". Для решения этой проблемы нужно добавить файлы mchar.so, fasttrun.so, fulleq.so в /usr/lib64/pgsql, их можно взять из сборок с сервера https://ftp.etersoft.ru/pub/Etersoft/Postgre%40Etersoft.../ (распаковав файл postgresql-8.4eter-contrib-8.4.4-eter1.1centos.x86_64.rpm), но там лежат только версии этого файла для centos 5 и centos 5.5. Где можно найти названную выше сборку для centos 6 или отдельно эти три файла?

Пытался собрать их (файлы) из исходников с помощью mock (исходники взял отсюда http://ftp.etersoft.ru/pub/Etersoft/Postgres%40Etersoft.../), но не собралось, так как эти исходники содержат .spec файл, сделанный для altlinux.

Ну и, да, три файла из сборок для centos 5 и 5.5 я пробовал подсунуть в /usr/lib64/pgsql/, разумеется они не подошли (клиент при попытке создать базу ругается сразу на несоответствие magic block)...

Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру