Inilah cara saya memecahkan masalah saya.
Pertama saya membuka kancing perubahan UUID pada file VDI basis saya dengan menggunakan script oleh jordoncm
Kemudian saya mencoba mengubah path dalam file vbox agar sesuai dengan lokasi baru. Itu tidak berfungsi karena berbagai kesalahan yang berbeda muncul dan saya bahkan tidak dapat menambahkan VM menggunakan file vbox.
Jadi saya menemukan artikel blog ini oleh Peter Porter yang menyarankan:
karena masing-masing .vdi hanya berisi sektor-sektor yang diubah dari .vdi terakhir, menyalin .vdi secara kronologis harus menjaring kita .vdi yang berisi salinan lengkap dari semua snapshot sebelumnya.
...
Gunakan perintah "VBoxManage clonehd" untuk membuat file .vdi baru berdasarkan dokumen asli Anda, lalu tambahkan setiap file berikutnya menggunakan argumen "-existing" untuk hanya menambahkan data ke .vdi yang ada yang sedang Anda buat. Daftar perintah berikut didasarkan pada contoh saya di atas:
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
Ini akan memberi Anda file "Machine-full.vdi" yang mewakili keadaan penuh mesin Anda dalam keadaan aktif tanpa ada hubungan dengan file .vdi induk. Anda sekarang dapat menggunakan file "Machine-full.vdi" ini di mesin virtual baru atau mengedit VM Anda yang ada, menghapus file .vdi yang lama dan menambahkan .vdi ini.
Dengan sedikit penyesuaian yang sepertinya berhasil untuk saya:
Ini adalah hard disk dan snapshots-nya:
<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>
Ini adalah perintah yang saya jalankan (maaf ada yang memotong windows-nya ...):
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
Omong kosong sepertinya saya perlu menambahkan entri di VirtualBox.xml di bawah MediaRegistry-> HardDisks, tapi saya harus memastikan untuk menambahkan setiap foto ke dalam urutan kronologis setelah setiap salinan. Jadi seperti ini:
Copy VM
Add entry to VirtualBox.xml
Copy VM ...
Dan sisa dari apa yang saya lakukan seandainya itu membantu orang lain:
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
Dan kemudian saya hanya membuat VM baru menggunakan ft_full.vdi sebagai basisnya. Cocok dengan sisa pengaturan di panel pengaturan gui.