zar, önce ilk şey ... asla kaydedilmiş durumda olan bir makineyi hareket ettirmeyin, taşımadan önce konuyu kapatmanız gerekir, yalnızca durumu kaydetmeniz gerekmez.
Ayrıca her iki ana bilgisayarda da aynı VirtualBOX sürümünü kullandığınızdan emin olun, ancak yalnızca VirtualBOX sürümünde değil, vesion eklenti paketinde ... ya da en azından yeni ana bilgisayarda daha yüksek bir sürüm bulunur, ancak hiçbir zaman iki tanesinde hiçbir zaman daha düşük bir sürüm yoktur.
Sonunda, zor yoldan öğrendim, makineyi taşımadan önce VirtualBOX'taki SHARED klasör konfigürasyonunu sildim, sonra doğru bir şekilde yeniden yarattım ... ana bilgisayar farklı işletim sistemleri (Windows / Linux ana bilgisayarları) olduğunda çok önemli.
Ve bir not olarak ... her zaman, daima işletim sistemi ve veri VDI'leri için sabit disk VDI dosyaları kullanın (bu şekilde aynı DATA VDI, misafirden daha fazlası için kullanılabilir), özellikle 4GiB pagefile.sys için hile
Son bölüm, değişmez bir VDI dosyasını tekrar kullanmak işlerin biraz daha zorlanmasına neden oluyor, VirtualBOX'ın BÜYÜK BİR HATASI var.
Bug'ı çalışırken görmek için:
- Değişmez bir VDI oluşturun (pagefile.sys için kullandığım gibi)
- VirtualBOX'ta İki veya Üç VM Oluşturun
- Bunlardan birini listenin en üstüne taşıyın (yalnızca herhangi birinize zarar gelmemesi için)
- Oluşturduğunuz her bir thoose makinesinin .vbox dosyalarını yedekleyin (BUG olduktan sonra karşılaştırmak için)
- Bu değiştirilemez VDI'yi bu makinelerin bir tanesine (listenin en üstünde olanlar hariç) ekleyin
- Şimdi listenin en üstünde bulunan makinenin .v kutusuna bakın.
Bu makine düzenlendi, değiştirilemez VDI olan diğer makinelere referanslar verdi.
Öyleyse HATA: Makineyi listenin en üstünde etkileyen, başka biri tarafından kullanılan değişken bir VDI ekleyen bir makineyi düzenleyin.
Neden tüm Windows makinalarda aynı 4GiB VDI'yi tekrar kullanıyorum? Kolay, tüm sanal makineler değiştirilemez oldukları için snapfils klasöründe bir dosya oluşturacakları ve bir sonraki önyüklemede kaybolacakları için pagefile.sys dosyasını koyduğum FAT32 bölümlü bir MBR diskidir. ana bilgisayar diskinde depolanan her konuk için 4GiB'ye gerek yok, yalnızca bir tane ... bu şekilde kendi geliştirdiğim uygulamaları (XP, Vista) için geliştirdiğim uygulamaları test etmek için 20'den fazla farklı pencereye sahip olduğum için çok fazla GiB tasarruf ediyorum , 7, 8, 8.1, 10) * (32Bits, 64Bits) * (Tıpkı ilk kurulumda, her ServicePack'ten sonra, tam Windows güncellemesinden sonra), çok fazla misafir alıyorum ... hepsinde Sanal RAM için değiştirilemez 4GiB VDI paylaşıyorum (sayfadosya.sys).
Eğer BUG'un daha ileri gitmesine izin verirseniz, thoose makinelerinden birini başka bir VirtualBOX ana bilgisayarına taşımayı deneyin (üzerinde yalnızca yapılandırılmış bir sanal makine olduklarını ve henüz üzerinde yüklü bir konuk olmadığını unutmayın), VirtualBox'ın izin vermediğini göreceksiniz Bazı VDI'lar eksik olduğundan bunları ekleyin (YANLIŞ ve DOĞRU, bu ilk makinenin, doğru makinede arı yetiştiriciliği yapılan VDI'lara referansları tutmasıdır).
Şimdi hepsinin .VBOX dosyalarını previos BackUp ile karşılaştırın ... nasıl birinin yanlış değiştirildiğine dikkat edin? ... evet, listenin en üstünde olanıdır.
Şey, bu Hata birkaç yıl önce VirtualBOX'a bilgi verdi, hala düzeltemiyorlar ... ve çok fazla soruna neden oluyor.
Ayrıca, sanal makinelerdeki en üst seviyeyi daha düşük bir konuma getirirseniz, VirtualBox'ı kapatın ve yeniden başlatın ... size bazı makinelerin zarar gördüğünü ve başlatılamadığını söyleyecektir ... evet listede ilk Çok fazla sorun yaşamak istemiyorsanız, farklı bir biçimde tedavi edilmelidir.
Keşfedilmesi beni çok fazla zaman alan (birkaç yıl önce) gerçekten zor bir hata!
Aradığım bir makineye sahip olarak üstesinden gelmiştim:
Boş bir konfigürasyona sahip ve sadece bir VDI var, evet, haklısınız, tahmin ettiğiniz gibi, diğer sanal makineler için paylaştığım değişmeyen VDI.
.VBOX dosyasını açtığımda, içinde çok fazla satır görüyorum <MediaRegistry>
<HardDisks>
, her makinede bir tane kullanılabildiğim VDI'yi kullanıyorum ... sadece bir örnek olarak (özel verileri kaldırıyorum):
<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>
Güzel Hata, yıllardır çözülemedi.
Eh, bu tür makineleri taşımak için .VBOX dosyalarını elle eklemelisiniz, .VBOX'ı eklemeden önce tüm ana makinedeki yeni ana makineye (listenin başında yer alan) referansları koymak için. dosyaları listeye eklerken, onları eklerken VirtualBOX'ın eksik VDI'lere referansları vardır (büyük HATA'nın neden olduğu eksik).
Bunun nedeni, başka bir makinede kullanılan bir VDI'yı her bağladığınızda, VirtualBOX iki makineyi güncellemektir. VBOX dosyaları (kullandığınız makineye ait olan) ve listedeki birinciye.
Listede ne olacağını tam olarak anlayamadım, ilki ona bağlı böyle ortak bir VDI yok ... denememek daha iyi, ne gördüğümü gördüm.
Bu yüzden, başka bir HOST'a geçmek, .VBOX dosyalarının iç yapısı ve VirtualBOX tarafından düzenlendiğinde büyük hataların olması nedeniyle çok kötü bir uygulama olduğu için göründüğünden çok daha karmaşıktır.
başarısız:
- İç yapı (XML) HOST'a bağlıdır (Windows veya Linux)
- Bir makineyi düzenleyin, yalnızca düzenlenen bir arıyı değil, başka birini değiştirebilir
- ... Dahası ?
Daha fazlasına ihtiyacım var ... ben her zaman bunu yapan makineleri geçiriyorum (ve hiç problem yaşamadım):
- Tüm makinelerin listesini not edin (sipariş, gruplama, vb.)
- Listedeki birinciyi not edin (tüm konfigürasyonları)
- Başka bir ana bilgisayara taşımak istediğim makinelerin tüm özelliklerini not alın
- .Vbox dosyalarını .txt dosyaları olarak kopyalayın (listenin en üstünde + geçirmek istediğiniz tüm makineler)
- VirtualBox'ın içindeki tüm makineleri yeniden yarat (ve listenin başında özel bir makineye sahip ol)
- VirtualBox'ı yeni ana bilgisayarda kapat
- Diff, eski .txt dosyasını yeni .vbox dosyalarıyla karşılaştırın ve yalnızca Kopyala ve Yapıştırma işlemlerini değil, bazı parçaları insan yolunda .txt'ten .vbox'a kopyalayın.
- VirtualBox'ı açın ve tüm VDI'leri doğru sırayla ekleyin.
- Yeni ana bilgisayarda VirtualBox'ı tekrar kapatın
- Diff, eski .txt dosyasını yeni .vbox dosyalarıyla karşılaştır ve 'fix' ile .txt'den .vbox'a bazı parçaları insan yolunda kopyala yapıştır
Geri kalan her şey (anlık görüntüler klasörü ve VDI dosyaları) bunları normal şekilde kopyalarım (Dosya Sistemi Kopyala ve Yapıştır).
Tüm bu zor el işleri, Büyük Hata Sanal Kutusu'ndan kaynaklanır: Birden fazla makinede kullanılan değişken bir VDI taktığınızda değiştirilmemiş bir makineyi düzenler / değiştirir, aksi halde .VBOX dosyasını kopyala ve yapıştır yeterli olacaktır (sonra paylaşılan klasör yollarını düzeltme, vb.