Автор Тема: Как запустить drwebd на altlinux x86_64  (Прочитано 3711 раз)

Оффлайн palex

  • Давно тут
  • **
  • Сообщений: 124
Имеется -
 altlinux-5.9.9-20100923-centaurus-x86_64, обновлен из Сизифа, ядро -2.6.32-std-def-alt21.1.
drweb-mail-servers-av-as_5.0.1.8-1010221250_linux64.
При запуске демона получаем следующее -
/etc/init.d/drwebd start
Starting Dr. Web daemon...
/opt/drweb/drwebd: line 2: /opt/drweb/drwebd.real: Нет такого файла или каталога
/opt/drweb/drwebd: line 2: /opt/drweb/drwebd.real: Победа
Проблема в том, что основной модуль доктора drwebd.real 32-х битный - ELF 32-bit LSB executable, intel 80386....
В попытке поддержать 32-битное ПО на x86_64 загрузил модуль ia32_aout (он, вроде как, за совместимость отвечает?).
Попробовал так -  setarch i386 /opt/drweb/drwebd.real - аналогично, не работает.
Саппорт drweb молчит третий день (однако, праздники )
И, собственно, вопрос - как запустить drwebd на altlinux x86_64?

ЗЫ. В ряде статей по работе 32бит ПО на х64 упоминается использование chroot , но пока не понял как это сделать. Ясно, что нужен ряд библиотек типа ld-linux.so,libc.so итд и псевдо-корневая структура, тогда вопрос - как организовать минимальный набор этих библиотек?
Также видел рекомендации использовать ia32-libs, но в сизифе их нет(?)
Переводить всю систему обратно на 32 бита из-за одного сервиса пока нет желания.





Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Как запустить drwebd на altlinux x86_64
« Ответ #1 : 08.11.2010 09:15:09 »
Можно попробовать установить недостающие библиотеки из arepo (x86_32)

Оффлайн palex

  • Давно тут
  • **
  • Сообщений: 124
Re: Как запустить drwebd на altlinux x86_64
« Ответ #2 : 08.11.2010 13:46:38 »
Можно попробовать установить недостающие библиотеки из arepo (x86_32)
Что-то получилось... Подключил в apt ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_32/RPMS.classic
установил i586-glibc-core - доктор заработал.
До того, правда, установил пакет arepo. Не был уверен в его необходимости, но с ним обновилось еще много всего...
...Вот только postfix письма перестал слать :-) не может законнектиться на порт демона
Nov  8 17:16:19 serv postfix/smtp[14754]: connect to 127.0.0.1[127.0.0.1]:8025: Connection refused
Похоже что не судьба, 32-х битная библиотека vaderetro доктору не понравилась....
tail -n 50 /var/log/maillog
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] maild INFO Run plugin 'vaderetro'...
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] vaderetro ERROR vaderetro error in creating vaderetro plugin object (error in open lib '/var/drweb/lib/libvaderetro.so.cache': /var/drweb/lib/libvaderetro.so.cache: wrong ELF class: ELFCLASS32)
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] maild FATAL Call of the 'CreateFilter' from the shared library /opt/drweb/maild/plugins/libvaderetro.so failed
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] maild ERROR during initialize plugins set: Can`t create filter for plugin 'vaderetro'
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] maild FATAL in main cycle: error in program initializing: see above
Nov  8 17:33:19 serv drweb-maild.real: [140530115979008] maild INFO Dr.Web for Unix mail servers 5.0.1.1 shutdown in progress ...

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 30 553
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Как запустить drwebd на altlinux x86_64
« Ответ #3 : 08.11.2010 18:30:30 »
Сам arepo вам не нужен - это пакет для подготовки x86_32.

Оффлайн palex

  • Давно тут
  • **
  • Сообщений: 124
Re: Как запустить drwebd на altlinux x86_64
« Ответ #4 : 08.11.2010 20:38:32 »
Сам arepo вам не нужен - это пакет для подготовки x86_32.
Да, понял это когда начал его рассматривать "изнутри" :-) Спасибо, что о нем сразу упомянули(хоть и не в том контексте, что понял я), но в итоге на нужное вышел, а то накопал-бы с chroot-ами и ia32-libs... :-)
Вобщем, если кому интересно, то на сегодняшний день у меня на платформе х86_64, после доустановки с репозитория х86_32, доктор-веб заработал-таки в качестве сканера, проверяет почту по фильтру headersfilter и на вирусы. Не работают: фильтр modifier и, основное,  из-за чего и установлен доктор-вирус, антиспам-плагин vaderetro.
С vaderetro странность - сразу после установки эта библиотека была x86_64, после первого же обновления закачалась i386(в путях обновления конкретно прописано на i386, зачем в названии пакета тогда озвучивали х64?). Что никак не повлияло на работоспособность - обе версии вырубают сервис drweb-monitor. С squid-icap и smb-spider еще не потренировался - уже боязно:-)
Видимо, на х86_64 эта программа еще не скоро станет nativ-ной.
 
*А деление платформы х86_64 на 2 все ближе и ближе...

Операция деления отменяется.. Все заработало. Насколько надежно и стабильно будет посмотрим , но потребление памяти, благодаря доктору и обвеске для него, значительно возросло.
ССЗБ - прощелкался при первой установке плагина vaderetro и установил i386, соответственно, файл со списком адресов обновления был на i386. А когда удалил и установил х64, этот файл не переписался, ну и, обновление шло с i386. А поскольку обновление запускал сразу, а только после него все сервисы, то и работу .vaderetro-x64 увидеть не мог - удалено было..

Вкратце - после добавления библиотек репозитория х86_32 postfix+drweb работает.
« Последнее редактирование: 10.11.2010 09:56:46 от palex »