Spamassassin: perl-Fehler "undefined symbol: db_version" beim Start

Status
Für weitere Antworten geschlossen.

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Guten Tag,

ich habe nach der Installation von Zarafa auch Spamassassin lt. Anleitung im Wiki installiert. Beim Start von Spamassassin über
Rich (BBCode):
NAS3> /opt/etc/init.d/S62spamd
erhalte ich die folgende Fehlermeldung:
Rich (BBCode):
Starting spamd
/opt/bin/perl: symbol lookup error: /opt/lib/perl5/5.10.0/i686-linux/auto/DB_File/DB_File.so: undefined symbol: db_version
Ein wenig Googeln brachte den Hinweis, dass evtl. mehr als eine BerkeleyDB installiert sein könnte. Ich habe über
Rich (BBCode):
ipkg remove -recursive libdb
die Pakete entfernt und wieder installiert, leider keine Besserung - auch nicht nach Neustart.

Habt ihr eine Idee dazu?

Gruß. Bruno.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
hast du mal geguckt ob allenfalls die Firmware bereits die Berkeley-DB dabei hat? Dann habe ich im Web auf die Schnelle mal noch einen Beitrag gefunden wo behauptet wird, dass dieser Fehler kommen könne wenn die Systemuhr nicht korrekt ist. Gib mal auf der Konsole date ein. Wie gross ist die Abweichung der Zeit zu aktuellen Zeit? Wenn die Abweichung grösser ist würde ich mal ntpdate -b 0.de.pool.ntp.org machen und nochmals probieren den Spamassassin zu starten
 

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Danke für die Antwort, jahlives.

'date' spuckt die korrekte Zeit aus.

Wie würde ich denn herausbekommen, ob die Firmware die DB's bereits mitbringt? Der Versuch, das Paket ohne Rekursion zu entfernen liefert folgende Ausgabe:

>NAS3> ipkg remove libdb
Nothing to be done
Successfully terminated.
Collected errors:
Package libdb is depended upon by packages:
openldap-libs
perl
php
python24
python25
python26
These might cease to work if package libdb is removed.

You can force removal of this package with -force-depends.
You can force removal of this package and its dependents
with -force-removal-of-dependent-packages or -recursive
or by setting option force_removal_of_dependent_packages
in ipkg.conf.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
ich weiss ned wie genau die Zeit sein muss, aber bei einer DB könnten schon wenige Sekunden Probleme machen. libdb müsste in der Firmware vorhanden sein, weil die Mailstation selber ja auch ein Spamassassin mitbringt. Und SA setzt glaub ich ganz grundsätzlich diese Lib voraus. Du kannst mal probieren ob du die Lib Files finden kannst z.B.
Code:
find /usr -name "libdb*"
find /usr -name libdb
wenn nichts gefunden wird kannst du statt /usr mal nur / verwenden. Das kann aber dauern weil dabei ALLES durchsucht wird.
Zum Enfernen der opt libdb müsstest du wohl mal -force-depends probieren. Oder erst alle genannten Pakete entfernen und erst dann die libdb
 

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Danke für die Tipps. Leider führte das nicht zum Erfolg. Aber nach ein wenig Recherche habe ich zumindest festgestellt, dass Spamassassin nicht separat installiert werden muss sondern Bestandteil von Zarafa ist. Und funktioniert! :)
 

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Irgendwie ist hier der Wurm drin und ich finde ihn nicht. Spamassassin läuft, aber das Training funktioniert noch nicht. Bei der Ausführung von
Rich (BBCode):
NAS3> ./sa-update --nogpg --channel saupdates.openprotect.com
erhalte ich die Fehlermeldung
Rich (BBCode):
Can't locate Archive/Tar.pm in @INC (@INC contains: /lib/perl5/site_perl/5.8.6 /usr/lib/perl5/5.8.6/X86 /usr/lib/perl5/5.8.6 /usr/lib/perl5/site_perl/5.8.6/X86 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl) at ./sa-update line 78.
BEGIN failed--compilation aborted at ./sa-update line 78.
Das Paket perl-archive-tar ist aber definitiv installiert. Wo wird denn die Variable @INC definiert?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
du scheinst das Perl der Firmware zu verwenden. Da fehlen scheinbar Pakete, die SA voraussetzt. Ich würde mal versuchen im sa-update den Perl Interpreter auf denjenigen des ipkg Perl umzustellen und dann die notwendigen Pakete installieren. Scheinbar fehlt der Firmware das tar.pm, dürfte es aber bei ipkg wohl geben
 

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Danke für den Tipp. Es gibt einen weiteren Threat dazu, in dem Du den gleichen Hinweis gegeben hast. Allerdings bekomme ich nach Anpassung nun auch den Fehler
Rich (BBCode):
Segmentation fault (core dumped)
IPKG ist aber definitiv passend zur Architektur der Diskstation. :(
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
welches sa-update resp sa-learn hast du denn verwendet? Von der Firmware oder die ipkg Version (gibts afaik im SA-Paket)?
 

Bloona

Benutzer
Mitglied seit
17. Nov 2009
Beiträge
55
Punkte für Reaktionen
0
Punkte
6
Ich verwende die Files aus dem Spamassassin-Ordner in der Mailstation, sollten IMHO die von der Firmware sein. Auf jeden Fall habe ich das Spamassassin-Paket aus dem IPKG deinstalliert.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
hm ich könnte mir vorstellen, dass es eventuell mit der ipkg Version klappen könnte. Weiss es aber wirklich ned sicher. Seg faults deuten eigentlich schon eher auf ein grundsätzliches Problem hin und da müsste es eigentlich auch bei der ipkg Version knallen, aber ohne es probiert zu haben weiss man es ned sicher ;-)
 

Pani

Benutzer
Mitglied seit
26. Sep 2010
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo
ich habe das selbe Problem und finde keine Lösung bin bei Linux noch Anfänger.
Habe im Internet bei diesem Wiki
http://wiki.gridengine.info/wiki/index.php/LD_LIBRARY_PATH

folgendes entdeckt kann man das auf die DS irgend wie verwenden

This can be maddenly frustrating, since the main program (perl in this case) is installed correctly and has correct permissions. If you delve further, you find that the libraries are also present and have correct permissions. Running ldd also works. Clever admins will even check LD_LIBRARY_PATH, and find that it works as well...


After consuming a few gallons of coffee, and removing most of remaining hair that you may have, you may find that LD_LIBRARY_PATH, is in fact the culprit. In the settings.[c]sh file, LD_LIBRARY_PATH is modified to include the $SGE_ROOT/lib/$SGE_ARCH directory. Included therein is libdb-4.2.so. Since loading dynamic libraries from LD_LIBRARY_PATH is done "early," this will frequently override other copies of libdb that are installed. This frequently includes libraries in /usr/lib.


There are a few possible solutions:

Edit settings.[c]sh to not modify LD_LIBRARY_PATH.
Edit LD_LIBRARY_PATH so that the system directories are checked before the SGE lib/ directory
Upgrade to SGE 6.1 or above (settings.[c]sh no longer munges LD_LIBRARY_PATH).

mfg wolfgang
 

Twister23

Benutzer
Mitglied seit
25. Mai 2012
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
schau doch mal welche libdb version installiert ist

Rich (BBCode):
find / -name "libdb*.so"

Bei mir sind mehrere Versionen installiert

Rich (BBCode):
/volume1/@optware/lib/libdb-4.2.so
/volume1/@optware/lib/libdb-5.2.so
/volume1/@optware/lib/libdb-5.so
/volume1/@optware/lib/libdb.so

/volume1/@optware/lib/libdb.so ist ein Link und zeigt möglicherweise auf die falsche libdb-Version

Rich (BBCode):
ls -ltr /volume1/@optware/lib/libdb.so
/volume1/@optware/lib/libdb.so -> /lib/libdb-5.1.so

ich hab den Link nun auf die Datei /volume1/@optware/lib/libdb-4.2.so gelegt und dann hat es funktioniert
Rich (BBCode):
rm /volume1/@optware/lib/libdb.so
ln -sf /volume1/@optware/lib/libdb-4.2.so /volume1/@optware/lib/libdb.so
 

freeman121083

Benutzer
Mitglied seit
24. Dez 2012
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Hallo Zusammen,

ich muss das Thema noch ein mal aufgreifen. Folgenden Ausgangspunkt:

DS710+ mit Zarafa 0.3.3 und Z-Push,

3 E-Mail Konten werden via Pop3 abgeholt und an meine Clients gepusht, funktioniert alles super!
Jetzt möchte ich egal wie (spamassassin?) meine Spam Mails markieren z.b. mit "SPAM" und natürlich automatisch verschieben lassen.
Das ganze natürlich in Verbindung mit Zarafa wobei ich glaube, es ist egal welches Front-End man benutzt.

kann mir dazu jemand helfen?? Grundlegende Linux Kenntnisse sind vorhanden. Mir geht der ganze Spam Scheiß auf die Nerven....

Ich bedanke mich vorab für die Unterstützung!

Gruß Freeman
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
automatisch auf dem Server verschieben geht afaik mit Bordmitteln (noch) ned. Da braucht es einen LDA, welcher einen Filter mitbringt z.B. dovecot resp deliver und sieve. Dovecot gehört mittlerweile zur Firmware, aber den LDA deliver hat Syno glaub immer noch nicht in die Firmware eingebaut. Lässt sich aber manuell kompillieren
 

freeman121083

Benutzer
Mitglied seit
24. Dez 2012
Beiträge
7
Punkte für Reaktionen
0
Punkte
0
Moin,

erst einmal danke für deine Antwort.

Ich habe mit dovecot schon mal begonnen, hat aber alles nicht geklappt. kannst du mir Stichpunktartig erklären wie?
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat