<< | Zurück
Wiederherstellen einer nicht exportierten VM
Vieleicht kennen Sie dieses Problem. Ein Hyper-V Host ist plötzlich durch einen Defekt funktionsuntüchtig und startet nicht mehr. Die Virtuellen Maschinen waren zu diesem Zeitpunkt produktiv im Einsatz. Genau dieses Problem ist bei einem Hyper-V Server aufgetreten. Nun stand ich aber vor einem weiteren großen Problem. Zwar wurde die Festplattensicherung erst kurz vorher erstellt, aber die VMs lagen nicht in exportierter Form vor. Nun ist es ja in Hyper-V möglich, eine neue Maschine zu erstellen und die wiederhergestellte Festplatte (VHD) dort anzufügen. Leider geht bei dieser Methode die Konfiguration verloren. Auch wird einen neue “Eindeutige-ID” erstellt, weshalb die Maschine wieder aktiviert werden muss. Doch gibt es auch eine andere Möglichkeit, mit der man diese Probleme umgehen kann. |
Ausgangslage
Neuinstallierter Windows Server 2008 R2 Sp1 mit aktivierter Hyper-V Rolle. Import von VM5 in den Hyper-V Manager nicht möglich, da kein Export vorhanden ist. |
Schritt 1
Beim Erstellen einer virtuellen Maschine wird eine spezielle Verknüpfung zur Konfigurationsdatei (.xml Datei) angelegt, durch die der Hypervisor “bemerkt”, dass eine VM vorhanden ist. Nur wenn diese Verknüpfung existiert, wird die VM im Hyper-V Manager angezeigt. C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines (HINWEIS: Der Ordner ProgramData ist versteckt) Da wir keine Verknüpfung haben, müssen wir uns zuerst eine Neue erstellen. Erstens die VM GUID: Diese finden wir im Ordner der VM unter “Virtual Machines”. Es ist der Name der XML-Datei. In unserem Fall liegt diese hier “D:\Virtuelle Maschinen\VM5\Virtual Machines” und heißt Zweitens den Pfad: Der Pfad zur XML-Datei ist in unserem Fall: ”D:\Virtuelle Maschinen\VM5\Virtual Machines\ Jetzt erstellen wir eine Textdatei mit folgendem Inhalt: mklink "%systemdrive%\programdata\Microsoft\Windows\Hyper-V\Virtual Machines\GUID-DER-VM.xml" "PFAD ZUR XML"So sieht es dann bei uns aus: mklink "%systemdrive%\programdata\Microsoft\Windows\Hyper-V\Virtual Machines\81A037E8-734E-4E09-881A-DF0D469699CF.xml" "D:\Virtuelle Maschinen\VM5\Virtual Machines\81A037E8-734E-4E09-881A-DF0D469699CF.xml"Diesen Befehl kopieren wir danach in ein administratives CMD Fenster oder führen es in einer Batch Datei aus. |
Schritt 2
Mit einem Rechtsklick gehen wir in “Eigenschaften”. |
Schritt 3
Falls in der VM ein Snapshot vorhanden sein sollte, müssen wir diesem auch auf oben genannte Weise verlinken. Dazu gehen wir im Ordner der VM (D:/Virtuelle Maschinen/VM5) auf “Snapshots” und kopieren uns die Snapshot GUID heraus. Wir erstellen uns wieder eine neue Textdatei und fügen dort folgenden Befehl ein: mklink "%systemdrive%\ProgramData\Microsoft\Windows\Hyper-V\Snapshots\GUID-DES-SNAPSHOTS.xml" "PFAD-ZUM-SNAPSHOT"So sieht es bei uns aus: mklink "%systemdrive%\ProgramData\Microsoft\Windows\Hyper-V\Snapshots\F1CE6ACF-078A-4D8C-949C-F969E1B722F4.xml" "D:\Virtuelle Maschinen\VM5\Snapshots\F1CE6ACF-078A-4D8C-949C-F969E1B722F4.xml"Wir führen wir den Befehl unter Administratorberechtigungen aus, wechseln in “C:\ProgramData\Microsoft\Windows\Hyper-V\Snapshots” und setzen die Zugriffsrechte der XML-Datei für “Jeder” auf “Vollzugriff”. Schritt 3 wiederholen wir für jeden Snapshot. ACHTUNG: Es kann allerdings vorkommen, dass die Snapshots im Hyper-V Manager nicht angezeigt werden. Das bedeutet, dass auf ältere Snapshots nicht zurückgegriffen werden kann. In meinem Fall wurde nach einem Export und erneutem Import (Siehe Schritt 5) die verbliebene AVHD automatisch mit der VHD zusammengeführt, sodass ich die VM trotzdem normal weiter nutzen konnte. |
Schritt 4
Nun öffnen wir die Diensteverwaltung (Start –> Verwaltung –> Dienste), suchen nach “Hyper-V-Verwaltung für virtuelle Computer” (vmms) und starten den Dienst neu. |
Schritt 5
Jetzt sehen wir unsere VM und den Snapshot wieder im Manager. Jetzt müssen noch eventuell die Netzwerkadapter angepasst werden. Wenn alles exportiert ist, löschen wir die VM aus dem Hyper-V Manager und entfernen die Dateien/Ordner der virtuellen Maschine im Ordner “D:/Virtuelle Maschinen” |
Schritt 6
Zum Schluss importieren wir die VM wie gewohnt und können wieder normal damit arbeiten, ohne die Konfiguration neu erstellen oder die VM erneut aktivieren zu müssen.