Nachdem der Virenscanner seinen Dienst quittiert hat und E-Mail aufgrund der fehlenden Antiviren Prüfung nicht mehr ausgeliefert wurden, musste der Dienst aufgeräumt werden. In den Logs fanden sich verschiedene Fehlermeldungen:

Beim Start des Dienstes:

systemctl restart clamd
Stopping Clam AntiVirus Daemon:                            [FAILED]
Starting Clam AntiVirus Daemon: LibClamAV Error: cli_loaddb(): No supported database files found in /var/clamav
ERROR: Can't open file or directory                        [FAILED]

Duplikate der Datenbanken Bytecode und Main:

clamd[3522]: LibClamAV Warning: Detected duplicate databases /var/lib/clamav/bytecode.cvd and /var/lib/clamav/bytecode.cld, please manually remove one of them
clamd[3522]: LibClamAV Warning: Detected duplicate databases /var/lib/clamav/main.cvd and /var/lib/clamav/main.cld, please manually remove one of them

Wie es die Fehlermeldung sagt habe ich am angegebenen Ort „/var/lib/clamav/“ jene Datenbanken gelöscht, die kleiner bzw. älter waren. Das hat das Problem jedoch verschlimmert:

clamd[787]: LibClamAV Warning: Detected duplicate databases /var/lib/clamav/bytecode.cvd and /var/lib/clamav/bytecode.cld, please manually remove one of them
clamd[787]: LibClamAV Error: mpool_malloc(): Can't allocate memory (262144 bytes).
clamd[787]: LibClamAV Error: cli_mpool_strdup(): Can't allocate memory (24 bytes).
clamd[787]: LibClamAV Error: cli_loadhash: Problem parsing database at line 2593014
clamd[787]: LibClamAV Error: Can't load main.mdb: Malformed database
clamd[787]: LibClamAV Error: cli_tgzload: Can't load main.mdb
clamd[787]: LibClamAV Error: Can't load /var/lib/clamav/main.cld: Malformed database
clamd[787]: LibClamAV Error: cli_loaddbdir(): error loading database /var/lib/clamav/main.cld
clamd[787]: ERROR: Malformed database

ClamAv kann die Datenbank nicht mehr lesen. An dieser Stelle habe ich beschlossen radikaler vorzugehen und die Datenbanken neu aufzubauen.

Als erstes beenden wir den Update Service:

killall freshclam

Alle Datenbank Dateien in dem Ordner „/var/lib/clamav/“löschen

rm bytecode.cvd, daily.cvd main.cvd mirrors.dat

Sollten hier noch alte Format wie oben im Log beschrieben vorliegen z.B. „bytecode.cld“, „main.cld“, … diese auch löschen.

Nun wird der Update Service wieder gestartet:

freshclam 

ClamAV update process started at Sat Sep 05 02:45:39 2020
main.cvd is up to date (version: 54, sigs: 1044387, f-level: 60, builder: sven)
Downloading daily.cvd [100%]
daily.cvd updated (version: 17258, sigs: 1297275, f-level: 63, builder: neo)
Downloading bytecode.cvd [100%]bytecode.cvd updated (version: 214, sigs: 41, f-level: 63, builder: neo)
Database updated (2341703 signatures) from db.local.clamav.net (IP: 69.12.162.28)
WARNING: Clamd was NOT notified: Can't connect to clamd through /var/run/clamav/clamd.sock
connect(): No such file or directory

Danach kann nun der ClamAv Service wieder gestartet werden:

systemctl start clamd

So ließ sich der ClamAv-Fehler „Keine unterstützten Datenbankdateien in /var/clamav gefunden“ beheben

Leave a Comment

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.