VHD in VHDX konvertieren

    Windows 8 und Server 2012 bringen unter der Bezeichnung VHDX ein leistungsfähigeres Format für virtuelle Festplatten als das bisherige VHD. Es ist unter Hyper-V künftig die Vorgabe, gleichzeitig unterstützen die neuen Betriebssysteme weiterhin VHDs. Umgekehrt lassen sich aber VHDX-Dateien unter älteren Windows-Versionen nicht nutzen, so dass man virtuelle Festplatten zukünftig immer wieder zwischen den beiden Formaten konvertieren muss.

    Konvertierungen werden nicht nur aufgrund der fehlenden Abwärtskompatibilität von VHDX zu VHD erforderlich sein, sondern beim Upgrade auf Windows 8 auch in die umgekehrte Richtung, um die Vorteile des neuen Formats nutzen zu können. Entsprechend unterstützt Microsoft die bidirektionale Umwandlung. Bei der Koexistenz von VHD und VHDX ist außerdem zu bedenken, dass es nicht möglich ist, ein Elternlaufwerk in einem Format mit einer davon abhängigen differenziellen Disk im anderen Format zu kombinieren.

    Konvertierung mit Hilfe des Hyper-V-Managers

    Wie bei den meisten Operationen unter Windows Server 2012 gibt es für die Konversion zwischen VHD und VHDX sowohl eine GUI- als auch eine PowerShell-Variante. Als grafisches Tool für diesen Zweck dient der Hyper-V-Manager, bei dem der Assistent zum Bearbeiten virtueller Festplatten für die Konvertierung zuständig ist. Er wird über den Befehl Datenträger bearbeiten gestartet und ist weitgehend selbsterklärend. Beim Konvertierungsvorgang bleibt die alte virtuelle Festplatte erhalten und jene im ausgewählten Zielformat wird zusätzlich erstellt.

    Im Hyper-V-Manager lassen sich die Formate VHD und VHDX über die Funktion 'Datenträger bearbeiten' konvertieren

    PowerShell-Variante mit Convert-VHD

    Um VHD- bzw. VHDX-Dateien in das jeweils andere Format per PowerShell zu überführen, muss das Hyper-V-Modul für PowerShell installiert sein. Anschließend steht das Cmdlet Convert-VHD zur Verfügung, um die gewünschte Umwandlung zu erledigen. Es bietet mehr Kontrolle über die Eigenschaften der Zieldatei als der Hyper-V-Manager, beispielsweise kann man dort auch die Blockgröße festlegen. Um eine VHD in eine VHDX zu konvertieren, könnte der Aufruf folgendermaßen aussehen:

    Convert-VHD -Path test.vhd –DestinationPath test.vhdx -VHDType Dynamic

    Ist das Zielformat wie in diesem Beispiel eine dynamische VHDX, dann könnte man den Parameter VHDType auch weglassen, weil es sich bei ihm um den Default handelt. Das Zielformat ergibt sich automatisch, es ist einfach das Gegenteil des Formats, in der die Quelldatei vorliegt.

    Wie der Hyper-V-Manager belässt auch Convert-VHD die Quelldatei, man kann sie aber durch Angabe des Parameters -DeleteSource entfernen. Weitere Optionen für den Aufruf des Cmdlets kann man über get-help Convert-VHD erfragen.

    Keine Kommentare