zar, hal pertama yang pertama ... jangan pernah memindahkan mesin yang dalam kondisi tersimpan, sebelum pindah Anda harus mematikan tamu, bukan hanya menyimpan keadaan.
Juga pastikan Anda menggunakan versi yang sama dari VirtualBOX di kedua host, tetapi tidak hanya versi VirtualBOX, juga vesion paket ekstensi ... atau setidaknya host baru memiliki versi yang lebih tinggi, tetapi tidak pernah ada versi yang lebih rendah pada salah satu dari mereka.
Dan akhirnya, saya mempelajarinya dengan cara yang sulit, menghapus konfigurasi folder SHARED pada VirtualBOX sebelum memindahkan mesin, kemudian membuatnya kembali dengan cara yang benar ... sangat penting ketika host berbeda OS (host Windows / Linux).
Dan hanya sebagai catatan ... i allways, allways menggunakan file VDI hard disk yang tidak dapat diubah untuk OS serta untuk data VDI (dengan cara itu DATA VDI yang sama dapat digunakan untuk lebih dari tamu), khususnya trik untuk pagefile.sys 4GiB
Pada bagian terakhir, gunakan kembali file VDI yang tidak dapat diubah membuat segalanya menjadi sedikit lebih sulit, VirtualBOX memiliki BUG BESAR.
Untuk melihat Bug beraksi:
- Buat satu VDI yang tidak dapat dimutasi (seperti yang saya gunakan untuk pagefile.sys)
- Buat Dua atau Tiga VM di VirtualBOX
- Pindahkan salah satu dari mereka ke atas daftar (hanya untuk menghindari salah satu dari Anda rusak)
- Cadangkan file .vbox dari masing-masing mesin yang Anda buat (untuk membandingkannya setelah BUG terjadi)
- Lampirkan VDI yang tidak dapat di-link ke lebih dari satu mesin itu (kecuali yang ada di bagian atas daftar)
- Sekarang lihat .vbox dari mesin yang ada di bagian atas daftar
Mesin itu telah diedit, ia memiliki referensi ke mesin-mesin lain yang tidak dapat diubah VDI.
Jadi BUGnya adalah: Edit satu mesin dengan menambahkan VDI yang tidak dapat diubah yang digunakan oleh mesin lain memengaruhi mesin di bagian atas daftar.
Kenapa saya menggunakan kembali VDI 4GiB yang sama pada semua mesin Windows? Mudah, ini adalah disk MBR dengan partisi FAT32 tempat saya meletakkan pagefile.sys, karena tidak dapat dipastikan semua mesin virtual akan membuat file pada folder snapshot mereka di mana mereka menyimpan perubahan, dan itu hilang pada boot berikutnya, jadi saya lakukan tidak perlu 4Gib untuk setiap tamu yang disimpan di disk host, hanya satu ... dengan begitu saya menyimpan banyak GiB karena saya punya lebih dari 20 jendela berbeda untuk menguji aplikasi yang saya kembangkan untuk saya sendiri, semua kombinasi (XP, Vista , 7, 8, 8.1, 10) * (32Bits, 64Bits) * (Sama seperti pada instalasi pertama, setelah setiap ServicePack, setelah pembaruan windows penuh), saya mendapatkan banyak, banyak tamu ... seterusnya semua saya berbagi VDI 4GiB yang tidak bisa diemkan untuk ram virtual (pagefile.sys).
Dan jika Anda membiarkan BUG melangkah lebih jauh, cobalah untuk memindahkan salah satu mesin pilihan ke host VirtualBOX lain (ingat mereka hanya mesin virtual dengan konfigurasi di atasnya dan belum ada tamu yang menginstalnya), Anda akan melihat VirtualBox tidak membiarkan Anda menambahkannya karena beberapa VDI hilang (itu SALAH dan BENAR, itu adalah bahwa mesin pertama memegang referensi ke VDI seperti menanamkan beeing pada mesin yang benar).
Sekarang bandingkan file .VBOX dari semuanya dengan previos BackUp ... perhatikan bagaimana orang salah memodifikasi? ... ya, ini yang ada di daftar paling atas.
Nah, BUG ini telah diinformasikan ke VirtualBOX beberapa tahun yang lalu, mereka masih tidak dapat memperbaikinya ... dan itu menyebabkan banyak, banyak masalah.
Selain itu, jika Anda memindahkan yang teratas di mesin virtual ke posisi yang lebih rendah, tutup VirtualBox dan luncurkan kembali ... akan memberi tahu Anda beberapa mesin rusak dan tidak dapat dimulai ... ya yang pertama dalam daftar harus diperlakukan dalam bentuk yang berbeda jika tidak ingin mendapat banyak masalah.
Ini adalah BUG yang benar-benar buruk yang membutuhkan banyak hari bagi saya untuk menemukannya (beberapa tahun yang lalu) saya mempelajarinya dengan cara yang sulit!
Saya telah mengatasinya dengan memiliki mesin yang saya sebut:
Ini memiliki konfigurasi kosong dan hanya satu VDI, ya, Anda benar, Anda sudah menebaknya, VDI yang tidak dapat saya bagikan untuk semua mesin virtual lainnya.
Nah ketika saya membuka file .VBOX saya melihat di dalamnya banyak baris pada <MediaRegistry>
<HardDisks>
bagian itu, satu per setiap mesin di mana saya menggunakan VDI yang tidak dapat diink ... seperti sampel (saya menghapus data pribadi):
<MediaRegistry>
<HardDisks>
<HardDisk uuid="...UUID..." location="D:\VDIs\_Virtual_Memory_.vdi" format="VDI" type="Immutable">
<HardDisk uuid="{...UUID...}" location="Snapshots\{...UUID...}.vdi" format="VDI" autoReset="true"/>
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows001 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows002 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows003 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows004 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows005 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows006 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows007 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows008 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows009 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows010 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows011 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows012 ... // This belongs to other virtual Machine
<HardDisk uuid="{...UUID...}" location="D:\VMs\Windows013 ... // This belongs to other virtual Machine
... and so on ... // This belongs to other virtual Machine
</HardDisk>
</HardDisks>
</MediaRegistry>
Cukup BUG, tidak terpecahkan sejak bertahun-tahun.
Nah, untuk memindahkan mesin seperti itu ... Anda harus mengedit file .VBOX secara manual, untuk meletakkan semua referensi disk pada host baru di mesin pertama (yang ada di bagian atas daftar) sebelum menambahkan .VBOX file ke daftar, jadi ketika menambahkannya VirtualBOX memiliki referensi ke VDI yang hilang (hilang disebabkan oleh BUG besar).
Masalahnya terjadi karena setiap kali Anda menghubungkan VDI yang digunakan pada komputer lain, VirtualBOX memperbarui dua mesin. File VBOX (yang milik mesin yang Anda gunakan) dan yang pertama dalam daftar.
Saya tidak sepenuhnya yakin apa yang akan terjadi ketika dalam daftar, yang pertama tidak memiliki VDI umum seperti itu ... lebih baik tidak mencobanya, melihat apa yang saya lihat.
Jadi bermigrasi ke HOST lain jauh lebih rumit daripada apa yang tampaknya karena implementasi yang sangat buruk pada struktur internal file. VBOX dan karena BUG sangat besar ketika VirtualBOX mengeditnya.
Gagal:
- Struktur internal (XML) tergantung pada HOST (Windows atau Linux)
- Mengedit satu mesin dapat mengubah yang lain, tidak hanya yang akan diedit
- ... apa lagi ?
Perlu lebih ... saya selalu memigrasi mesin melakukan ini (dan tidak punya masalah, tidak pernah):
- Catat daftar semua mesin (pesanan, pengelompokan, dll)
- Perhatikan yang pertama dalam daftar (semua konfigurasinya)
- Perhatikan semua properti mesin yang ingin saya pindahkan ke host lain
- Salin file .vbox sebagai file .txt (yang ada di daftar paling atas + semua mesin yang ingin saya migrasikan)
- Buat kembali semua mesin (dan miliki yang spesial di bagian atas daftar) di dalam VirtualBox pada host baru
- Tutup VirtualBox di host baru
- Diff membandingkan .txt lama dengan file .vbox baru dan menyalin dari .txt ke .vbox beberapa bagian dengan cara manusia, tidak hanya Salin & Tempel
- Buka VirtualBox dan lampirkan semua VDI dalam urutan yang benar
- Sekali lagi Tutup VirtualBox pada host baru
- Diff membandingkan .txt lama dengan file .vbox baru dan 'memperbaiki' dari .txt ke .vbox beberapa bagian dengan cara manusia, tidak hanya Salin & Tempel
Semua yang lain (folder snapshot dan file VDI) saya salin dengan cara normal (Copy & Paste Sistem File).
Semua kerja manual yang berat itu disebabkan oleh Big BUG VirtualBox: Ini mengedit / mengubah mesin yang belum dimodifikasi ketika Anda memasang VDI yang tidak dapat diijinkan yang digunakan pada lebih dari satu mesin, selain itu Salin & Tempel file .VBOX akan cukup (setelah memperbaiki jalur folder bersama, dll).