Snapshots händisch mergen

TL;DR:

  • Hyper-V mergt VHD(X) und AVHD(X) nur beim Booten einer VM
  • Ein reiner Neustart von innerhalb des OS mergt die nicht
  • Wenn kaum noch Speicher vorhanden ist, ist schwierig zu mergen – denn der wird bei der Zusammenführung gebraucht.

Vorbereitungen für Powershell-Befehle

Für den Fall, dass sie nicht installiert ist und wir die Powershell nutzen wollen: wir brauchen die Powershell-Module für Hyper-V

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-PowerShell

Danach findet er alle weiter unten genannten Befehle.

Herausfinden der Kette der Snapshots

GUI

Hyper-V Manager rechts „Datenträger überprüfen“

Die älteste Platte auswählen. Dort steht dann drunter ein „Übergeordnete Disk“. Die notieren. Über die untere Schaltfläche können wir die übergeordnete Disk ebenfalls direkt notieren und uns so eine „Kette“ aufbauen.

Powershell

Folgender Powershell-Befehl listet die übergeordnete (A)VHD(X):

(Get-VHD -Path ".\pfad-zur-avhd.avhdx").ParentPath

In Powershell können wir daraus auch eine Liste bauen:

$Path = ".\pfad-zur-avhd.avhdx"
while($Path) {
	Write-Host $Path
	$Path = (Get-VHD -Path $Path).ParentPath
}

Damit haben wir eine Kette, welcher Snapshot auf welchem basiert, und können diese zusammenführen.

Mergen

Per GUI

Wir wählen rechts aus, dass wir einen Datenträger bearbeiten wollen:

Hier wählen wir den Snapshot aus.

Wir sagen, dass wir zusammenführen wollen.

Er nimmt direkt die übergeordnete Datei.

Kaffe holen, das dauert je nach Größe der Snapshots. Dieses Vorgehen wiederholen wir für alle Snapshots.

Man kann mehrere Snapshots gleichzeitig mergen. Dabei empfiehlt es sich, die beiden Fenster erst zu verschieben, bevor man den zweiten startet; das untere Fenster ist nämlich während des Merge-Vorganges gesperrt.

Powershell

Easy Einzeiler:

Merge-VHD -Path ".\Snapshot.avhdx" -DestinationPath ".\Festplatte.vhdx"

Bei Fehlern beim Boot in Hyper-V

Kaum Speicherplatz

VHDs, die nicht aktiv gemergt werden, von der entsprechenden Partition ziehen

„xyz.avhdx“ wurde nicht gefunden

Pfad in der VM anpassen. Bei Snapshot wird der auf die avhdx gesetzt.

Nach Merge kein Start – „Merge steht noch aus“

  • Anpassen des Pfades zur VHD
  • Alternativ rauslöschen der Festplatte und hinzufügen einer „neuen“ Festplatte

Kategorie: HyperV

tino-ruge.de wird tino-kuptz.de

Im Laufe des Jahres 2024 wird dieser Blog umziehen. Alle Inhalte werden 1:1 weitergeleitet, nix geht verloren. Neue Domain, alter Autor, alter Inhalt.