Website-Icon .: blog cscholz.io :.

Debian: postgrey db reparieren

Sollte die postgrey DB korrupt werden, kann dies je nach Größe der DB ärgerlich sein, da bei der verwendung einer neuen DB erstmal alle Clients gegreylisted werden.

Man kann die postgrey.db jedoch auch reparieren.

Als erstes müssen die Tools für BerkeleyDBs installiert werden. Die aktuelle Version finden Sie wiefolgt heraus.

apt-cache search Berkeley | grep util
db4.2-util - Berkeley v4.2 Database Utilities
db4.3-util - Berkeley v4.3 Database Utilities
db4.4-util - Berkeley v4.4 Database Utilities
kboincspy - monitoring utility for the BOINC client
libdb3-util - Berkeley v3 Database Utilities
dnsutils - Clients provided with BIND

Entscheident sind hier die dbx.x-util Einträge. Nachdem Sie die aktuelle Version installiert haben sollten Sie postgrey stoppen insofern es noch läuft

/etc/init.d/postgrey stop 

wechseln Sie nun in den postgrey Ordner

cd /var/lib/postgrey

und sichern die defekte Datenbanken

db4.4_dump -p postgrey.db >/var/tmp/postgrey.db
db4.4_dump -p postgrey_clients.db >/var/tmp/postgrey_clients.db

Nun bereinigen wir den Postgrey Ordner erstmal von allen unnötigen Dateien

rm /var/run/postgrey.pid
rm /var/lib/postgrey/* -f

Nun postgrey start und wieder stoppen, damit eine leere Datenbank angelegt wird. 

/etc/init.d/postgrey start
/etc/init.d/postgrey stop

Nun kann die Sicherung wieder hergestellt werden

db4.4_load -f /var/tmp/postgrey_clients.db postgrey_clients.db
db4.4_load -f /var/tmp/postgrey.db postgrey.db

Nun postgrey wieder starten …

Die mobile Version verlassen