Nach einem dist-upgrade
eines Kali-Linux-Systems startet der gvmd.service
nicht mehr. Der Start läuft in einen Timeout und eine entsprechende Meldung wird angezeigt. Eine Überprüfung des GVM-Setups wird empfohlen:
$ sudo gvm-check-setup
Bei der Überprüfung der Installation wird folgendes Problem erkannt:
Database is wrong version
ERROR: Database is wrong version. You have installed a new gvmd version
FIX: Run 'sudo runuser -u _gvm -- gvmd --migrate'
ERROR: Your GVM-23.11.0 installation is not yet complete!
Ursache
Ein dist-upgrade
in Kali Linux oder anderen Debian-basierten Distributionen aktualisiert die installierten Pakete, einschließlich GVM
, auf die neueste Version, sofern GVM
über den Paketmanager installiert wurde und eine neue Version im Repository verfügbar ist. Bei einem dist-upgrade
wird auch die Datenbanksoftware selbst (in diesem Fall PostgreSQL
) auf eine neuere Version aktualisiert, wenn ein Update verfügbar ist, aber die Datenbankstruktur (d.h. die Daten in der PostgreSQL-Datenbank, einschließlich Tabellen, Spalten, Indizes usw.) bleibt unverändert.
GVM
speichert viele seiner Daten in einer PostgreSQL-Datenbank, und jede neue Version von GVM
kann Änderungen an der Struktur der Datenbank erfordern (z. B. neue Tabellen, geänderte Spalten, neue Indizes usw.). Diese Änderungen werden jedoch nicht automatisch bei der Aktualisierung von GVM
vorgenommen, und die Migrations- und Aktualisierungsprozesse für die Datenbanken müssen getrennt durchgeführt werden.
Nach einem GVM-Upgrade
kann daher ein Datenbank-Upgrade erforderlich sein. Diese Anpassung erfolgt durch die Ausführung eines Migrationsskripts, das normalerweise in der neuen GVM-Version enthalten ist. Die Meldung Database is wrong version
ist ein Hinweis darauf, dass die aktuell installierte Version von GVM
eine Datenbank in einer bestimmten Version erwartet oder dass die vorhandene Datenbankstruktur nicht mehr passt.
Fix
Der von GVM
vorgeschlagene Fix (sudo runuser -u _gvm -- gvmd --migrate
) führt die notwendige Migration der Datenbank durch. Dieser Befehl sorgt dafür, dass alle Änderungen an der Datenbankstruktur, die mit der neuen GVM-Version kommen, auf die bestehende Datenbank angewendet werden. Dadurch wird die Datenbank auf den neuesten Stand gebracht, so dass sie wieder mit der aktualisierten GVM-Version kompatibel ist.
$ sudo runuser -u _gvm -- gvmd --migrate
Dieser Vorgang kann je nach Größe der Datenbank einige Zeit in Anspruch nehmen. Nach einem erneuten gvm-check-setup
sollten keine Fehler mehr angezeigt werden:
$ sudo gvm-check-setup
.
.
It seems like your GVM-23.11.0 installation is OK.