URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 66432
[ Назад ]

Исходное сообщение
"Не удается запуcтить amavisd-new"

Отправлено evgenii , 21-Май-06 17:53 
После жесткого рестарта не удается запустить amavisd-new.
Вот такая ошибка:

# ./amavisd.sh start
Starting amavisd.
/usr/libexec/ld-elf.so.1: /usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so: Undefined symbol "db_version"

Пробовал заново переустановить из портов и заодно обновить версию до последней - установка прошла нормально, но ошибка так и осталась.
ОС - FreeBSD 4.11


Содержание

Сообщения в этом обсуждении
"Не удается запуcтить amavisd-new"
Отправлено Tigran Parsadanian , 22-Май-06 10:42 
У меня была такая проблема, я просто скопировал /usr/libexec/ld-elf.so.1 с другого сервера, и все!
:)
Цивильного решения найти, небыло времени!



"Не удается запуcтить amavisd-new"
Отправлено evgenii , 22-Май-06 13:39 
>У меня была такая проблема, я просто скопировал /usr/libexec/ld-elf.so.1 с другого сервера,
>и все!
> :)
>Цивильного решения найти, небыло времени!

а если версии разные?
при копировании/замене пишет permission denied, как скопировать?


"Не удается запуcтить amavisd-new"
Отправлено Skif , 22-Май-06 13:59 
>У меня была такая проблема, я просто скопировал /usr/libexec/ld-elf.so.1 с другого сервера,
>и все!
> :)
>Цивильного решения найти, небыло времени!


ответ неверный и абсолютно неправельный.

>Starting amavisd.
>/usr/libexec/ld-elf.so.1: /usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so: Undefined
>symbol "db_version"

это говорит только о том, что у вас слетела либа(BerkeleyDB.so) после ребута. Переинстальте её. либо прекомпильте amavisd без поддержки BerkeleyDB, точнее софт из зависимостей.


ldconfig -r | grep BerkeleyDB.so
ldd /usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so


"Не удается запуcтить amavisd-new"
Отправлено evgenii , 22-Май-06 16:50 

>это говорит только о том, что у вас слетела либа(BerkeleyDB.so) после ребута.
>Переинстальте её. либо прекомпильте amavisd без поддержки BerkeleyDB, точнее софт из
>зависимостей.
>
>
переинсталлировал amavisd и заодно BerkeleyDB

>ldconfig -r | grep BerkeleyDB.so
в ответ тишина, т.е. либа отсутствует

>ldd /usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so
/usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so:
а здесь либа на месте

Где еще копать?


"Не удается запуcтить amavisd-new"
Отправлено Skif , 22-Май-06 22:29 

>>ldconfig -r | grep BerkeleyDB.so
>в ответ тишина, т.е. либа отсутствует
>
>>ldd /usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so
>/usr/local//mach/auto/BerkeleyDB/BerkeleyDB.so:
>а здесь либа на месте
>
>Где еще копать?

попробовать сделать
ldconfig -R /usr/local/mach/auto/BerkeleyDB/
Попробовать сделать линк в /usr/local/lib , /usr/lib/ Это иногда помогает. Например для pam_winbindв 6-й ветке фряли, приходиться делать линк из /usr/local/lib  в /usr/lib/ и только после этого начинает работать либа, ибо в противном случае либа не находиться.

lf /usr/local/mach/auto/BerkeleyDB/
ll /usr/local/mach/auto/BerkeleyDB/

Убедиться, что BerkeleyDB.so не линк на какую либо другую либу.

lf /var/db/pkg | grep db
lf /var/db/pkg | grep BerkleyDB
perl -v

покажите какая версия стоит каждого. Вспоснте, ненакатывали ли вы perl ибо на версии, кажется 5.8.7 имеет мето похожего плана проблема именно с перловым модулем. Причем BerkleyDB используется 4.0-4.1

сделайте

cd /usr/ports/databases/p5-BerkeleyDB
make deinstall
make clean
make all install clean
ldconfig -R

И попробуйте еще раз запустить. Так же не помешает пересобратьи сам порт  /usr/ports/databases/db-_num_of_version_


"Не удается запуcтить amavisd-new"
Отправлено Skif , 22-Май-06 22:56 
Кстати, батенька, а почему вы не указываете конкретного местоположения BerkleyDB?
/usr/local/lib/perl5/site_perl/5.8.7/mach/auto/BerkeleyDB/BerkeleyDB.so
Вот к примеру где уменя он лег, а у вас как-то базис того, пролетел мимо... Или вы не из портов его ставили?
Это сразу бы навело на мысль того, что непорядки идут с перлом и его модулями, а так пришлось ставить сей порт длля диагностики...
Тоесть, точно укажите куда легла либа и perl -v дайте

              


"Не удается запуcтить amavisd-new"
Отправлено evgenii , 23-Май-06 20:22 
>Кстати, батенька, а почему вы не указываете конкретного местоположения BerkleyDB?
>/usr/local/lib/perl5/site_perl/5.8.7/mach/auto/BerkeleyDB/BerkeleyDB.so
>Вот к примеру где уменя он лег, а у вас как-то базис
>того, пролетел мимо... Или вы не из портов его ставили?
>Это сразу бы навело на мысль того, что непорядки идут с перлом
>и его модулями, а так пришлось ставить сей порт длля диагностики...
>
>Тоесть, точно укажите куда легла либа и perl -v дайте
>
>
вобщем переустановил из портов perl, заодно и обновил до 5.8.8, переустановил также все модули из портов, но ошибка так и осталась......

# ldconfig -R
-r-xr-xr-x  1 root  wheel  140590 May 23 20:06 /usr/local/lib/perl5/site_perl/5.8.8/mach/auto/BerkeleyDB/BerkeleyDB.so

# lf /var/db/pkg | grep db
db3-3.3.11_2,1/
db4-4.0.14_1,1/
pkgdb.db
ruby18-bdb4-0.5.7/

# lf /var/db/pkg | grep BerkeleyDB
p5-BerkeleyDB-0.27_3/

# perl -v

This is perl, v5.8.8 built for i386-freebsd-64int

# amavisd
/usr/libexec/ld-elf.so.1: /usr/local/lib/perl5/site_perl/5.8.8/mach/auto/BerkeleyDB/BerkeleyDB.so: Undefined symbol "db_version"

Что делать???


"Не удается запуcтить amavisd-new"
Отправлено Skif , 24-Май-06 00:32 
попробуйте откатиться на предыдущую версию p5-BerkeleyDB
Паокажите
ldconfig -r | grep db

lf /var/db/pkg | grep db

Если присутствуют 3 и 4-я версии снесите обе, несмотря на зависимости (из зависимостей должен быть p5-BerkeleyDB и amavisd-new) и скомпильте p5-BerkeleyDB с поддержкой 3-й ветки db (в принципе это должно компилиться по дефолту)

Еще покажите
lf /var/db/pkg | grep amavisd


"Не удается запуcтить amavisd-new"
Отправлено Skif , 24-Май-06 00:36 
>попробуйте откатиться на предыдущую версию p5-BerkeleyDB
>Паокажите
>ldconfig -r | grep db
>
>lf /var/db/pkg | grep db
>
>Если присутствуют 3 и 4-я версии снесите обе, несмотря на зависимости (из
>зависимостей должен быть p5-BerkeleyDB и amavisd-new) и скомпильте p5-BerkeleyDB с поддержкой
>3-й ветки db (в принципе это должно компилиться по дефолту)
>
>Еще покажите
>lf /var/db/pkg | grep amavisd


Да, еще попробуйте явно указать линковку p5-BerkeleyDB с 3-й веткой (детальнее Makefile) И с 4-й и посмотрите результат.


"Не удается запуcтить amavisd-new"
Отправлено evgenii , 24-Май-06 01:31 
>>попробуйте откатиться на предыдущую версию p5-BerkeleyDB
>>Паокажите
>>ldconfig -r | grep db
>>
>>lf /var/db/pkg | grep db
>>
>>Если присутствуют 3 и 4-я версии снесите обе, несмотря на зависимости (из
>>зависимостей должен быть p5-BerkeleyDB и amavisd-new) и скомпильте p5-BerkeleyDB с поддержкой

рискованно сносить, т.к. стоит много разного софта.


>>3-й ветки db (в принципе это должно компилиться по дефолту)
>>
>>Еще покажите
>>lf /var/db/pkg | grep amavisd
>

# ldconfig -r |grep db
тишина...

# lf /var/db/pkg |grep db
db3-3.3.11_2,1/
db4-4.0.14_1,1/
pkgdb.db
ruby18-bdb4-0.5.7/

# lf /var/db/pkg | grep amavisd
amavisd-new-2.4.1,1/

попробую откатиться на старый порт

>Да, еще попробуйте явно указать линковку p5-BerkeleyDB с 3-й веткой (детальнее Makefile)
>И с 4-й и посмотрите результат.

и это попробую.


"Не удается запуcтить amavisd-new"
Отправлено evgenii , 26-Май-06 19:01 
>>>попробуйте откатиться на предыдущую версию p5-BerkeleyDB
>>>Паокажите
>>>ldconfig -r | grep db
>>>
>>>lf /var/db/pkg | grep db
>>>
>>>Если присутствуют 3 и 4-я версии снесите обе, несмотря на зависимости (из
>>>зависимостей должен быть p5-BerkeleyDB и amavisd-new) и скомпильте p5-BerkeleyDB с поддержкой
>
>рискованно сносить, т.к. стоит много разного софта.
>
>
>>>3-й ветки db (в принципе это должно компилиться по дефолту)
>>>
>>>Еще покажите
>>>lf /var/db/pkg | grep amavisd
>>
>
># ldconfig -r |grep db
>тишина...
>
># lf /var/db/pkg |grep db
>db3-3.3.11_2,1/
>db4-4.0.14_1,1/
>pkgdb.db
>ruby18-bdb4-0.5.7/
>
># lf /var/db/pkg | grep amavisd
>amavisd-new-2.4.1,1/
>
>попробую откатиться на старый порт
>
>>Да, еще попробуйте явно указать линковку p5-BerkeleyDB с 3-й веткой (детальнее Makefile)
>>И с 4-й и посмотрите результат.
>
>и это попробую.

Выяснилось, что предыдущая версия p5-BerkeleyDB по умолчанию компилиться с 3-й версией db, а новая версия компилиться с db4.3, которая не была установлена. Причем сам модуль при компиляции выдал только warning, после установки db4.3 все заработало!!!
Спасибо за помощь!