Używam VirtualBox 4.1.x na moim komputerze Ubuntu i skonfigurowałem kilka maszyn wirtualnych. Ponieważ istnieje kilka sposobów przeniesienia maszyny wirtualnej w VirtualBox na inny komputer, zastanawiałem się, który z nich jest zalecany:
- Użyj „narzędzia importu / eksportu”.
- Skopiuj cały folder maszyny wirtualnej zawierający pliki
.vdi
i.vbox
. - Sklonuj VDI za pomocą „Virtual Media Manager”, a następnie ponownie utwórz maszynę wirtualną na maszynie docelowej, ale używając sklonowanego VDI jako dysku twardego.
Kilka razy z powodzeniem zastosowałem pierwszą metodę i zawsze działała. Problem polega na tym, że po wyeksportowaniu i zaimportowaniu obraz dysku jest przekształcany w VMDK, a nie VDI!
2-ty metoda jest chyba najprostszy, ale nie jestem pewien, że po prostu kopiowanie plików będzie działać lub nie na komputerze docelowym. Podczas wyszukiwania tej metody zauważyłem, że niektórzy ludzie mieli problemy z edycją pliku VirtualBox.xml, aby go rozwiązać!
Wreszcie istnieje trzecia metoda , ale wymaga dodatkowej pracy związanej z utworzeniem maszyny wirtualnej podobnej do oryginalnej konfiguracji maszyny wirtualnej, co nie jest pożądane.
Z powyższego wyjaśnienia jasno wynika, że moją pożądaną metodą jest druga, ale potrzebuję porady ekspertów, czy to działa, czy nie. Nie chcę, aby jakakolwiek edycja XML przeszkadzała mi!
Jaka jest najlepsza metoda bezpiecznego przenoszenia moich maszyn wirtualnych na inny komputer za pomocą VirtualBox?
źródło
Odpowiedzi:
Dobra robota do prowadzenia badań. Regularnie korzystam ze wszystkich trzech opcji.
(Użyj „narzędzia importu / eksportu”) . Jest to najłatwiejsze, ponieważ łączy całą maszynę wirtualną w jeden plik i przesyła ją bez problemu prawie za każdym razem. Jednak z mojego doświadczenia podczas tworzenia pliku OVA lub OVF do eksportu wyrzuca wszystkie migawki i jeśli wykonane nieprawidłowo może spowodować plik VMDK. Po ponownym zaimportowaniu maszyny wirtualnej powinieneś być w stanie wybrać typ pliku dysku twardego, który chcesz utworzyć, VDI lub VMDK.
(Skopiuj cały folder maszyny wirtualnej, zawierający pliki
.vdi
i.vbox
) . Jest to moja preferowana opcja i chociaż musiałem edytować plik XML kilka razy, to moja wina, że coś zepsułem. Upewnij się, że podczas kopiowania maszyny wirtualnej otrzymujesz WSZYSTKIE pliki z nią powiązane. Problemy, na które natrafiłem, polegały na tym, że niektóre migawki i dodatkowe pliki VDI znajdowały się w niewłaściwym katalogu i nie zostały poprawnie skopiowane. Jeśli skopiujesz wszystkie pliki (i uprawnienia), nie powinieneś mieć żadnych problemów.(Sklonuj VDI za pomocą „Virtual Media Manager”, a następnie ponownie utwórz maszynę wirtualną na maszynie docelowej, ale używając sklonowanego VDI jako dysku twardego). Jest to mniej pożądane, ponieważ wtedy masz 2 kopie maszyny wirtualnej i może to powodować problemy z licencjonowaniem, problemy z siecią itp., W zależności od sposobu klonowania pliku VDI.
Podsumowując, zdecydowanie polecam opcję 2, po prostu upewnij się, że otrzymałeś wszystkie potrzebne pliki po przeniesieniu.
źródło
Metoda 2 działa teraz dobrze (z VirtualBox 4.0 i nowszym) , bez wymaganej modyfikacji XML:
Otóż to!
ps: Mam VirtualBox 4.3.20 na OSX 10.10
Zobacz ten post na forum VirtualBox, aby uzyskać więcej informacji.
źródło
Moją preferowaną opcją jest również opcja 2:
Ale czasami zdarza się niedopasowanie UUID. Często dzieje się tak, jeśli po prostu skopiujesz obraz dysku VDI jednej maszyny na inną maszynę, ale zdarzyło mi się to podczas prostych kopii pełnych katalogów.
Jeśli więc taki komunikat pojawi się po przeniesieniu maszyny wirtualnej i próbie uruchomienia jej w nowej konfiguracji:
Wystarczy wejść do katalogu swojej maszyny wirtualnej; oczywiście zmień rzeczywistą ścieżkę, tak aby pasowała do rzeczywistej ścieżki, którą idziesz:
I uruchom to polecenie, aby przypisać dyskowi nowy identyfikator UUID:
źródło
W przypadku, gdy ktoś inny szuka odpowiedzi na to pytanie, udało mi się przenieść 5 maszyn wirtualnych Virtual Box na inną instalację Win7 na nowym dysku twardym na tym samym komputerze (zasadniczo przejście z jednego systemu operacyjnego gościa na inny na tym samym komputerze). Zdaję sobie sprawę, że sterowniki na zupełnie nowej maszynie prawdopodobnie będą się różnić i potencjalnie będą miały negatywny wpływ na przeprowadzkę, ale udokumentowałem proces poniżej w nadziei, że może komuś pomóc.
Na starym hoście Win7:
Na nowym hoście Win7:
WAŻNE: (Nie zaznaczaj pola wyboru, aby otworzyć / uruchom VirtualBox na koniec instalacji)
Powodzenia.
źródło
W szczególnym przypadku, gdy:
Jeśli tak, to proste:
.config/VirtualBox
iVirtualBox VMs
z hosta źródłowego.źródło
Czwarta droga
W VirtualBOX:
W Eksploratorze plików:
Z powrotem w VirtualBOX:
Uwaga: Jeśli metoda 2 popsunie instalację VirtualBOX, przejdź do C: \ Users \ .VirtualBox i usuń VirtualBox.xml i zmień nazwę VirtualBox.xml-prev na VirtualBox.xml
źródło
Użyłem również metody 2, aby przenieść maszynę wirtualną i nie musiałem dokonywać żadnych zmian w żadnym pliku XML, ale dostałem kilka błędów związanych z USB i udostępnianiem plików, a poniżej opisałem, jak je naprawiłem wraz z procesem:
Skopiuj maszynę wirtualną ze starego na nowy komputer. Pliki maszyny wirtualnej różnią się od samej maszyny wirtualnej Oracle. Te pliki są zwykle w c: \ users \\ VirtualBox VMs \ . Podniosłem całą część VirtualBox VMs \ i skopiowałem ją do podobnej lokalizacji na nowym komputerze. Spowoduje to skopiowanie wszystkich maszyn wirtualnych, które miałem na oryginalnym komputerze.
Teraz na nowym komputerze uruchom wirtualne okno i wybierz Menu> Maszyna> Dodaj i wybierz plik .vbox z folderu skopiowanego. Otóż to.
Teraz, gdy uruchamiam maszynę wirtualną na nowym komputerze, mam błąd podczas uruchamiania:
Nie wiem, dlaczego kontroler USB nie działał, ponieważ to samo działało na oryginalnym komputerze. Poszedłem dalej i zainstalowałem VirtualBox Extension Pack
Ta instalacja była trochę dziwna, ponieważ pobieranie instalacji nie było plikiem wykonywalnym. Kliknąłem Oracle_VM_VirtualBox_Extension_Pack-5.1.4-110228.vbox-extpack i wybrałem „Wybierz program z listy zainstalowanych programów”, a następnie wybrałem Virtualbox Oracel i zainstalowałem rozszerzenie. To rozwiązało problem, ale innym mniej pożądanym rozwiązaniem jest wyłączenie USB.
Jeśli masz foldery udostępnione w oryginalnej maszynie wirtualnej, mogą się one różnić i pojawi się błąd. Przejrzyj te w Ustawieniach >> Folder współdzielony i usuń te, które są uszkodzone. Będzie wyglądał komunikat o błędzie
.
To wszystko.
źródło
zar, po pierwsze ... nigdy nie ruszaj maszyną, która jest w stanie zapisanym, przed przeniesieniem musisz zamknąć gościa, a nie tylko zapisać stan.
Upewnij się również, że używasz tej samej wersji VirtualBOX na obu hostach, ale nie tylko wersji VirtualBOX, także rozszerzenia pakietu vesion ... lub przynajmniej nowy host ma wyższą wersję, ale nigdy niższą wersję na żadnym z tych dwóch.
I w końcu nauczyłem się tego na własnej skórze, usuwam konfigurację folderu SHARED na VirtualBOX przed przeniesieniem komputera, a następnie tworzę go ponownie we właściwy sposób ... bardzo ważne, gdy host jest inny OS (hosty Windows / Linux).
I tak na marginesie ... zawsze używam niezmiennych plików VDI dysku twardego dla systemu operacyjnego, a także dla danych VDI (w ten sposób można użyć tego samego DATA VDI dla więcej niż gościa), szczególnie sztuczka dla 4GiB pagefile.sys
Ostatnia część, ponowne użycie niezmiennego pliku VDI sprawia, że sprawy stają się trochę trudniejsze, VirtualBOX ma DUŻY BŁĄD.
Aby zobaczyć błąd w akcji:
Ta maszyna została edytowana, ma odniesienia do innych maszyn niewymiennych VDI.
Więc BŁĄD polega na: Edycja jednej maszyny poprzez dodanie niewymienialnego VDI, który jest używany przez inny, wpływa na maszynę na górze listy.
Dlaczego, do diabła, ponownie używam tego samego VDI 4GiB na wszystkich komputerach z systemem Windows? Łatwo, to dysk MBR z partycją FAT32, na której umieściłem pagefile.sys, ponieważ jest niemożliwy do modyfikacji, wszystkie maszyny wirtualne utworzą plik w folderze migawek, w którym przechowują zmiany, i które gubią się przy następnym uruchomieniu, więc robię to nie potrzebuję 4GiB dla każdego gościa przechowywanego na dysku hosta, tylko jeden ... w ten sposób oszczędzam dużo GiB, ponieważ mam ponad 20 różnych okien do testowania aplikacji, które tworzę dla siebie, wszystkie kombinacje (XP, Vista , 7, 8, 8.1, 10) * (32 bity, 64 bity) * (tak jak przy pierwszej instalacji, po każdym dodatku ServicePack, po pełnej aktualizacji systemu Windows), otrzymuję wielu gości ... więc na wszystkich Udostępniam niewymienny VDI 4GiB dla wirtualnego pamięci RAM (pagefile.sys).
A jeśli pozwolisz BŁĘDOWI pójść dalej, spróbuj przenieść jedną z tych maszyn na inny host VirtualBOX (pamiętaj, że to tylko maszyna wirtualna z konfiguracją na nich i nie ma jeszcze zainstalowanego gościa), zobaczysz, że VirtualBox nie pozwala ci dodaj je, ponieważ brakuje niektórych VDI (jest to FAŁSZ i PRAWDA, jest tak, że taka pierwsza maszyna przechowuje odniesienia do takich instancji VDI związanych z uruchomieniem na właściwej maszynie).
Teraz porównaj wszystkie pliki .VBOX z poprzednią wersją BackUp ... zwróć uwagę na to, jak się źle modyfikuje? ... tak, to ta na górze listy.
Cóż, ten BŁĄD został poinformowany VirtualBOX kilka lat temu, nadal nie mogą go naprawić ... i powoduje wiele, wiele problemów.
Co więcej, jeśli przeniesiesz górną na maszynach wirtualnych w niższą pozycję, zamknij VirtualBox i uruchom go ponownie ... powie ci, że niektóre maszyny są uszkodzone i nie można ich uruchomić ... tak, pierwsza na liście należy traktować w innej formie, jeśli nie chcesz mieć większych problemów.
To naprawdę zły BŁĄD, który odkryłem (kilka lat temu) zajęło mi wiele dni. Nauczyłem się tego na własnej skórze!
Pokonałem go, mając maszynę, którą zadzwoniłem:
Common Inmutable Disks
Ma pustą konfigurację i tylko jeden VDI, tak, masz rację, zgadnij, niewymienny VDI, który udostępniam dla wszystkich pozostałych maszyn wirtualnych.
Cóż, kiedy otwieram plik .VBOX, widzę w nim wiele linii w
<MediaRegistry>
<HardDisks>
sekcji, po jednej na każdą maszynę, na której używam tego niezmiennego VDI ... tak jak próbka (usuwam prywatne dane):BŁĄD, nierozwiązany od lat.
Cóż, aby przenieść takie maszyny ... musisz ręcznie edytować pliki .VBOX, aby umieścić wszystkie odwołania do tych dysków na nowym hoście na pierwszym komputerze (tym, który znajduje się na górze listy) przed dodaniem .VBOX pliki do listy, więc podczas ich dodawania VirtualBOX zawiera odniesienia do brakujących VDI (brak spowodowanych przez duży BŁĄD).
Dzieje się tak, ponieważ za każdym razem, gdy podłączasz VDI, który jest używany na innym komputerze, VirtualBOX aktualizuje dwa pliki .VBOX na komputerze (ten, który należy do używanego komputera) i do pierwszego na liście.
Nie jestem całkowicie pewien, co by się stało, gdy na liście, pierwsza nie ma tak wspólnego VDI ... lepiej nie próbować, widziałem to, co widzę.
Migracja do innego hosta jest znacznie bardziej skomplikowana niż to, co wydaje się być spowodowane bardzo złą implementacją wewnętrznej struktury plików .VBOX oraz z powodu naprawdę dużych błędów podczas edycji VirtualBOX.
Nie działa:
Potrzebujesz więcej ... Zawsze migruję maszyny, robiąc to (i nigdy nie miałem problemu, nigdy):
Całą resztę (folder migawek i pliki VDI) kopiuję w normalny sposób (Kopiowanie i wklejanie systemu plików).
Cała ta ciężka praca ręczna jest spowodowana przez Big BUG VirtualBox: Edytuje / modyfikuje maszynę, która nie została zmodyfikowana, gdy dołączasz niewymienny VDI, który jest używany na więcej niż jednym komputerze, w przeciwnym razie wystarczy zwykły plik Kopiuj i Wklej .VBOX (po ustalanie ścieżek folderów współdzielonych itp.).
źródło
Skopiuj folder zawierający maszynę do miejsca docelowego, a następnie z menu: „Maszyna” ---> „Dodaj”, a następnie wybierz plik vbox, NIE plik vdi. Dla mnie to poszło bezbłędnie. Nie jestem pewien, czy miałem szczęście, czy też tak powinno działać.
źródło