So habe ich mein Problem gelöst.
Zuerst habe ich die Änderung der UUID in meiner Basis-VDI-Datei rückgängig gemacht, indem ich das Skript von jordoncm verwendet habe
Dann habe ich einfach versucht, die Pfade in der vbox-Datei zu ändern, um sie an den neuen Speicherort anzupassen. Das hat nicht geklappt, da verschiedene Fehler aufgetreten sind und ich die VM nicht einmal über die vbox-Datei hinzufügen konnte.
So fand ich diesen Blogartikel von Peter Porter, der vorschlug:
Da jede .vdi-Datei nur die Sektoren enthält, die gegenüber der letzten .vdi-Datei geändert wurden, sollten Sie beim Kopieren der .vdi-Dateien in chronologischer Reihenfolge eine .vdi-Datei mit einer vollständigen Kopie aller vorherigen Snapshots erhalten.
...
Verwenden Sie den Befehl "VBoxManage clonehd", um eine neue .vdi-Datei auf der Grundlage Ihres Originals zu erstellen, und fügen Sie dann jede nachfolgende Datei mit dem Argument "–existing" hinzu, um die Daten einfach zu der vorhandenen .vdi-Datei hinzuzufügen, die Sie erstellen. Die folgende Befehlsliste basiert auf meinem obigen Beispiel:
VBoxManage clonehd Machine.vdi Machine-full.vdi
VBoxManage clonehd Snapshots {UUID1} .vdi Machine-full.vdi
VBoxManage clonehd Snapshots {UUID2} .vdi Machine-full.vdi
VBoxManage clonehd Snapshots {UUID3} .vdi Machine-full.vdi
VBoxManage clonehd Snapshots {UUID4} .vdi Machine-full.vdi
Dadurch erhalten Sie eine Datei "Machine-full.vdi", die den vollständigen Status Ihres Computers im aktiven Status ohne Beziehung zu den übergeordneten .vdi-Dateien darstellt. Sie können diese Datei "Machine-full.vdi" jetzt auf einer neuen virtuellen Maschine verwenden oder Ihre vorhandene VM bearbeiten, indem Sie die alte .vdi-Datei entfernen und diese .vdi hinzufügen.
Mit ein bisschen Feineinstellung schien das für mich zu funktionieren:
Dies ist die Festplatte und ihre Schnappschüsse:
<HardDisk uuid="{ed1428ca-76be-440a-894b-e666b50f5c86}" location="H:/vm/ft.vdi" format="VDI" type="Normal">
<HardDisk uuid="{8d8be78f-6648-4503-bee3-8810cb853a99}" location="Snapshots/{8d8be78f-6648-4503-bee3-8810cb853a99}.vdi" format="VDI">
<HardDisk uuid="{cce0ee4f-5052-4be7-81ff-47ea08202716}" location="Snapshots/{cce0ee4f-5052-4be7-81ff-47ea08202716}.vdi" format="VDI">
<HardDisk uuid="{c297d4b9-972d-4b07-a839-5d76ee8d0387}" location="Snapshots/{c297d4b9-972d-4b07-a839-5d76ee8d0387}.vdi" format="VDI">
<HardDisk uuid="{8e9ca914-648f-464c-b515-2606c644d7f0}" location="Snapshots/{8e9ca914-648f-464c-b515-2606c644d7f0}.vdi" format="VDI"/>
</HardDisk>
</HardDisk>
</HardDisk>
</HardDisk>
Dies sind die Befehle, die ich ausgeführt habe.
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd N:\vm\ft.vdi N:\vm\ft_full.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: a7fb5e25-c248-4644-a898-f1e26f6570a4
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd "N:\vm\VirtualBox VMs\lfs\Snapshots\{8d8be78f-6648-4503
VBoxManage.exe: error: Parent medium with UUID {ed1428ca-76be-440a-894b-e666b50f5c86} of the medium 'N:\vm\Vi
03-bee3-8810cb853a99}.vdi' is not found in the media registry ('C:\Users\ <user>/.VirtualBox\VirtualBox.xml')
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component Medium, interface IMedium, callee IUnknow
Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, AccessMode_ReadWrite, fForceNewUuidOnOpen, pM
xManageDisk.cpp
Mist, ich muss einen Eintrag in der VirtualBox.xml unter MediaRegistry-> HardDisks hinzufügen, aber ich muss sicherstellen, dass jeder Schnappschuss nach jeder Kopie in chronologischer Reihenfolge hinzugefügt wird. Es ist also so:
Copy VM
Add entry to VirtualBox.xml
Copy VM ...
Und der Rest von dem, was ich getan habe, falls es jemand anderem hilft:
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd --existing "N:\vm\VirtualBox VMs\lfs\Snapshots\{8d8be78
_full.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: a7fb5e25-c248-4644-a898-f1e26f6570a4
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd --existing "N:\vm\VirtualBox VMs\lfs\Snapshots\{cce0ee4f-5052-4be7-81ff-47ea08202716}.vdi" N:\vm\ft_full.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: a7fb5e25-c248-4644-a898-f1e26f6570a4
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd --existing "N:\vm\VirtualBox VMs\lfs\Snapshots\{c297d4b9-972d-4b07-a839-5d76ee8d0387}.vdi" N:\vm\ft_full.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: a7fb5e25-c248-4644-a898-f1e26f6570a4
C:\Program Files\Oracle\VirtualBox>VBoxManage clonehd --existing "N:\vm\VirtualBox VMs\lfs\Snapshots\{8e9ca914-648f-464c-b515-2606c644d7f0}.vdi" N:\vm\ft_full.vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VDI'. UUID: a7fb5e25-c248-4644-a898-f1e26f6570a4
Und dann habe ich einfach eine neue VM mit der Datei ft_full.vdi als Basis erstellt. Stimmen mit den restlichen Einstellungen im GUI-Einstellungsbereich überein.