Ich habe zwei virtuelle Festplatten aus einer VirtualBox-VM auf die falsche Weise gelöscht. Ich habe sie aus der Gastkonfiguration entfernt, aber vergessen, sie aus der Medienliste zu entfernen, und die Dateien und Verzeichnisse aus dem Dateisystem gelöscht, sodass die Festplatten in der Medienliste als fehlerhaft angezeigt werden. Sie haben zugeordnete Snapshots, sodass ich Fehlermeldungen erhalte, dass sie verwendet werden. Wenn ich versuche, die zugeordneten Snapshots über die GUI zu löschen, vboxmanage
erhalte ich diese Fehlermeldung:
VBoxManage.exe: error: VD: error VERR_PATH_NOT_FOUND opening image file [location]
Natürlich sind auch die Snapshots weg (das waren alte VMDK-Dateien, die ich gemountet habe, also sind die Snapshots vielleicht nicht einmal echt). Wie entferne ich diese Ghost-Einträge manuell aus meiner VirtualBox-Konfiguration? Ich vermute, es gibt eine Konfigurationsdatei oder einen Registrierungseintrag, aber ich bin nicht sicher, wo ich suchen soll.
Antwort1
Hoffe, das hilft jemandem.
cat ~/.config/VirtualBox/VirtualBox.xml | grep your_roguedisk.vdi
Erfassen Sie die Ausgabe der UUID.
$ vboxmanage closemedium disk "{d89ef84a-d754-4da2-b2a1-cc37063d0c6d}" --delete
Antwort2
Der Fehler sieht wie im folgenden Screenshot aus:
VERR_PATH_NOT_FOUND
bedeutet, dass der angegebene Dateipfad ungültig ist. Nach jedem Vorgang mit VBoxManage speichert VirtualBox den Dateipfad in der globalen Konfigurationsdatei. Die Datei ist eine Datei im XML-Format. VirtualBox verwaltet globale Konfigurationsdaten im folgenden Verzeichnis:
- Linux und Oracle Solaris:
$HOME/.config/VirtualBox/VirtualBox.xml
- Windows:
%UserProfile%\.VirtualBox\VirtualBox.xml
oderC:\Users\UserName\.VirtualBox\VirtualBox.xml
- Mac OS X:
$HOME/Library/VirtualBox/VirtualBox.xml
Diese Datei enthält die Konfiguration aller virtuellen Maschinen.sichern Sie sievor dem Bearbeiten. Öffnen Sie die VirtualBox.xml
Datei in einem beliebigen Texteditor. Suchen Sie den Dateipfad, den Sie löschen möchten. Normalerweise befindet sich der Pfad im <HardDisk/>
Tag. Das Format sieht beispielsweise so aus:
<HardDisks>
<HardDisk uuid="{3761d018-e224-45d4-aa61-764d2c408712}" location="F:/test.VHD" format="VHD" type="Normal"/>
<HardDisk uuid="{9f4f1f1c-f4c9-4773-a0b3-f0c52f699142}" location="F:/test.VMDK" format="vmdk" type="Normal"/>
</HardDisks>
Entfernen Sie die vollständige Tag-Zeile, sonst zeigt VBox einen Fehler an. Sichern Sie deshalb die Datei, bevor Sie Änderungen vornehmen. Weitere Einzelheiten finden Sie unterVirtualBox-Dokumente: 10.1.3. Globale Konfigurationsdaten.
Antwort3
Inspiriert von der ersten Antwort, die nicht funktionierte, fand ich die Lösung. Die Lösung besteht darin, VirtualBox zu stoppen, dann in das Verzeichnis für die (oder jede) einzelne VM zu gehen, die auf die betreffenden Disk-Images verweist, die .vbox-Datei für die VM zu bearbeiten, die Festplatteneinträge (einschließlich Snapshots) zu löschen und VirtualBox dann erneut zu starten. Der Medienmanager zeigt keine Einträge für diese Festplatten an.