A więc na początek spróbujmy odpowiedzieć sobie na wcześniej postawione pytanie – Po co jest mi potrzebna ta cała wirtualizacja?
Zacznę od takiego oto przykładu. Nie tak dawno swój debiut miał nowy system operacyjny Microsoftu a mianowicie Windows 8, wielu moich znajomych (i także ja) zastanawiało się - Czy przypadkiem nie zmienić wersji okienek? Jak to w życiu bywa po wcześniejszych doświadczeniach z Vistą (dodam niezbyt przyjemnych) tym razem nie chcieli „kupować kota w worku” postanowili najpierw przyjrzeć się bliżej temu systemowi, popracować na nim parę godzin, by na tej podstawie ocenić atrakcyjność nowego produktu. Zdobycie działającej wersji Windows 8 nie było jakimś tam nadzwyczajnym wyczynem bo można było całkiem legalnie pobrać obraz systemu ze stron Microsoftu (wersja Windows 8 Consumer Preview). Po uzyskaniu obrazu płyty nastąpił pewien problem a mianowicie jak to zrobić by zbytnio nie ingerować w system fizycznie zainstalowany na komputerze a móc zainstalować nowy system tak by go sprawdzić w działaniu? Oczywiście odpowiedź jest bardzo prosta, stworzyć wirtualną maszynę i w takim środowisku testować nowy produkt. Integracja w fizyczny system była minimalna bo wystarczyło zainstalować odpowiedni program np. VirtualBox by z jego pomocą przeprowadzić całą operację, jednym słowem szybko, prosto i wygodnie.
Odwracając sytuację gdybyśmy nie mieli takiego oprogramowania cała sprawa byłaby trudniejsza do zrealizowania, bo albo by trzeba było zamontować drugi dysk i na nim przeprowadzić instalację albo instalować obok działającego systemu. W obu przypadkach, rozwiązania naszego problemu bardziej czasochłonne i wymagające większego nakładu pracy. Tak naprawdę w ten sposób możemy przetestować każdy dowolny system i nieważne czy jest to Windows czy Linux, oczywiście możliwa jest również wirtualizacja MacOS (z większymi bądź mniejszymi problemami ale da się to zrobić). I oto mamy pierwszy przykład.
Trochę z innej beczki, mój znajomy ma „niezwykły” talent do użytkowania systemu Windows a raczej jego unieruchamiania. Więc nader często musiałem mu naprawiać komputer co najczęściej wiązało się z przeinstalowaniem systemu. Niestety dla niego (a może jednak stety) musiałem wyjechać na dłuższy czas, znajomy mój znając oczywiście swój „talent”, przezornie poprosił mnie bym go nauczył instalacji systemu tak by w razie problemów zrobić to samemu. By pomóc opanować mu tę umiejętność wykorzystałem właśnie wirtualizację, w odizolowanym wirtualnym środowisku mógł czynność instalacji systemu wykonywać wielokrotnie i na różnych systemach tak by poznać całą procedurę, którą oczywiście po jakimś czasie zastosował na „żywym organizmie”. Kolejny powód by zainteresować się wirtualizacją, bo można wiele czynności najpierw przetestować by wykryć potencjalne problemy by później już bez niespodzianek wprowadzać zmiany na fizycznym sprzęcie. Sam z swojego doświadczenia mogę powiedzieć, że jest to bardzo wygodny sposób, który stosuję za każdym razem gdy chcę wprowadzić jakąś nową funkcję lub zmodyfikować system np. gdy grzebię przy polisach GPO, najpierw sprawdzam jak zmiany wpłyną na zarządzane przeze mnie środowisko by po stwierdzeniu, że działa zgodnie z moimi zamierzeniami wprowadzić je realnie (inny przykład aktualizacje, nigdy nie wiadomo czy po zainstalowaniu ich coś się nie posypie).
Kolejny przykład przemawiający za stosowaniem wirtualizacji to fakt, że wiele firm posiada i normalnie używa wielu programów napisanych dla starszych wersji systemu Windows czy nawet jeszcze DOS’a a wiadomo, że często dochodzi do sytuacji w których te programy odmawiają posłuszeństwa z nowym systemem i nadzwyczaj w świecie nie da się ich uruchomić i znów z opresji może wybawić nasz wirtualizacja. Bo wystarczy zwirtualizować dany system by na nim uruchomić pożądaną aplikację. Sytuacja sprzed kilku dni, szkoła bazująca na oprogramowaniu Vulcana a dokładnie korzystająca z aplikacji Sekretariat (baza uczniów) która to do działania wykorzystuje SQL. Wszystko pięknie działało do pory wypuszczenia kolejnej aktualizacji programu i jak to bywa po aktualizacji wszystko się posypało (baza uległa uszkodzeniu podczas konwersji do nowego formatu). Okazało się że z jakiś przyczyn po aktualizacji program odmawia współpracy z serwerem SQL (Widows SQL Serwer 2008) no i oczywiście wielki problem. Kilka podjętych prób przywrócenia bazy, ponownej instalacji programu spaliło na panewce. Producent programu zaleca korzystanie z SQL Express 2005 (zresztą taką wersję dodaje do oprogramowania) więc pada pomysł by może spróbować jednak na tej wersji, tylko tu kolejny problem bo nie można odinstalować wersji SQL 2008, bo kilka innych programów nadal korzysta z tej instancji. Sytuacja trochę beznadziejna, ale wybawieniem okazuje się właśnie wirtualny system. Następuje instalacja Windows 7 w VirtualBox-ie, integracja wirtualnego systemu z istniejącą infrastrukturą sieciową, instalacja SQL Express 2005, instalacja programu wraz z przywróceniem bazy z kopii, aktualizacja programu i nagle się okazuje że wszystko działa jak należy.
Mógłbym podać jeszcze kilka przykładów, gdzie wirtualizacja okazała się wybawieniem i środkiem do osiągnięcia zamierzonego celu ale wydaje mi się że przykłady przytoczone powyżej przemawiają na korzyść tej technologii i że jednak warto przyjrzeć się jej bliżej (zresztą kolejne zalety zostaną opisane w dalszej części artykułu).
Ale wirtualizacja to nie tylko zalety są również wady.
Wyobraź sobie czytelniku, że mamy komputer na którym są uruchomione trzy różne wirtualne maszyny a maszyny te pełnią różne funkcje. Następuje awaria dysku twardego i komputer gospodarz odmawia posłuszeństwa. Tak scentralizowane środowisko za jednym zamachem ulega uszkodzeniu, zostają wyłączone wszystkie wirtualne hosty, które siłą rzeczy nie mogą pełnić już powierzonych im ról.
Innym problemem jest zapewnienie odpowiedniego poziomu bezpieczeństwa, bo wirtualizacja dostarcza nowych wyzwań w tej kwestii.
Można by było jeszcze parę wad wymienić ale zagadnienia te dotyczą osób, które wirtualizację wykorzystują w zastosowaniach przemysłowych.
Tym czym powinien jeszcze zająć się użytkownik domowy (a ten stosujący wirtualizację w wydaniu profesjonalnym szczególnie) to zwrócenie uwagi na sprzęt a raczej pewne rozwiązania, które sprawią że proces ten będzie realizowany wydajniej.
Tak naprawdę trzeba zwrócić uwagę głównie na dwie kwestie: procesor by wspierał wirtualizację i rozmiar pamięci RAM.
Pierwszym elementem jest procesor, odpowiednie funkcje zaszyte w sercu procesora spowodują, że system gościa będzie współistniał na równych prawach co system bazowy. W przypadku procesora firmy Intel – technologia Intel-VT, jeśli zaś chodzi o AMD - technologia AMD-V.
Jak sprawdzić czy procesor ma takie funkcje? Wystarczy wykorzystać program CPU-Z. Jak widać na poniższym rysunku oba procesory mają odpowiedni funkcje.
Rysunek 1 CPU-Z - funkcje procesora
Z drugim elementem czyli z pamięcią RAM jest znacznie mniejszy problem bo rządzi tu zasada im więcej tym lepiej. Komputer musi mieć odpowiednią ilość pamięci, bo cześć jej trzeba przyznać wirtualnym hostom a im więcej przydzielimy tym maszyna ta będzie sprawniej funkcjonować.
Pierwszym opisywanym przeze mnie programem realizującym funkcje wirtualizacji jest bardzo popularny i chyba co najważniejsze darmowy VirtualBox.
Wspierane systemy przez VirtualBox (co nie znaczy, że nie można instalować innych)
Windows
Windows XP, all service packs (32-bit)
Windows Server 2003 (32-bit)
Windows Vista (32-bit and 64-bit
Windows Server 2008 (32-bit and 64-bit)
Windows 7 (32-bit and 64-bit)
Windows 8 (32-bit and 64-bit)
Windows Server 2012 (64-bit)
Mac OS X
10.6 (Snow Leopard, 32-bit and 64-bit)
10.7 (Lion, 32-bit and 64-bit)
10.8 (Mountain Lion, 64-bit)
Linux
8.04 (“Hardy Heron”), 8.10 (“Intrepid Ibex”), 9.04 (“Jaunty Jackalope”), 9.10 (“Karmic Koala”), 10.04 (“Lucid Lynx”), 10.10 (“Maverick Meerkat), 11.04 (“Natty Narwhal”), 11.10 (“Oneiric Oncelot”), 12.04 (“Precise Pangolin”)
Debian GNU/Linux 5.0 (“lenny”) and 6.0 (“squeeze”)
Oracle Enterprise Linux 4 and 5, Oracle Linux 6
Redhat Enterprise Linux 4, 5 and 6
Fedora Core 4 to 17
Gentoo Linux
openSUSE 11.0, 11.1, 11.2, 11.3, 11.4, 12.1, 12.2
Mandriva 2010 and 2011
Solaris
Solaris 11 włączając Solaris 11 Express
Solaris 10 (u8 i wyżej)
Po pobraniu programu i zainstalowaniu go, program przywita nas oknem takim jak poniżej, oczywiście po lewej stronie gdzie widnieją stworzone przez nas wirtualne maszyny, okno będzie puste. Okno spełnia również rolę informacyjną bo po kliknięciu na daną maszynę, pojawią się nam podstawowe informacje odnośnie stworzonej maszyny.
Rysunek 2 VirtualBox - główne okno programu
Preferencje programu.
General – Zmianadomyślnej ścieżki programu, w której przechowywane są pliki tworzonych wirtualnych maszyn oraz migawki a także ustawienie autoryzacji połączenia poprzez pulpit zdalny.
Rysunek 3 VirtualBox - Ustawienia - Zakładka General
Input – Ustawienie klawisza odpowiedzialnego za powrót do systemu gospodarza.
Rysunek 4 VirtualBox - Ustawienia - Zakładka Input
Update – opcje aktualizacji.
Rysunek 5 VirtualBox - Ustawienia - Zakładka Update
Language – ustawienie języka interfejsu program.
Rysunek 6 VirtualBox - Ustawienia - Zakładka Language
Display – opcje związane z ustawieniem rozdzielczości pulpitu wirtualnej maszyny.
Rysunek 7 VirtualBox - Ustawienia - Zakładka Display
Network – opcje sieciowe. Po kliknięciu na plus możemy dodać kolejną kartę sieciową.
Rysunek 8 VirtualBox - Ustawienia - Zakładka Network
Kliknięcie na śrubokręt (chyba to jest śrubokręt?) pozwoli nam na sprecyzowanie ustawień a mianowicie ustawienie adresu IP karty a także włączenie bądź wyłączenie serwera DHCP odpowiedzialnego za przyznawanie adresów wirtualnym hostom.
Rysunek 9 VirtualBox - Ustawienia sieciowe
Extensions – zakładka informująca nas o zainstalowanych dodatkowych pakietach, możliwa jest operacja dodania nowych rozszerzeń bądź usunięcie już zainstalowanych.
Rysunek 10 VirtualBox - Ustawienia - Zakładka Extensions
Proxy – opcje związane z ustawieniami proxy.
Rysunek 11 VirtualBox - Ustawienia - Zakładka Proxy
Przejdźmy do utworzenia całkiem nowej maszyny wirtualnej (na razie z wykorzystaniem GUI, w dalszej części artykuły wykorzystamy również CLI) w tym celu klikamy na ikonę New. Uruchomi się nam kreator tworzenia nowej maszyny, który krok po kroku przeprowadzi nas przez cały proces. Jeśli nie chcemy skorzystać z kreatora i ustawić wszystko w jednym oknie możemy kliknąć na Hide description. Pierwszym krokiem jest nazwanie naszej maszyny, wybieramy taką nazwę by móc łatwo identyfikować naszą maszynę czyli najczęściej to się sprowadza do nazwania jej od nazwy systemu, który będziemy instalować. W moim przypadku – Windows 7 – maszyna testowa.
Poniżej możemy wybrać typ zainstalowanego systemu, ustawienia służą do opisu maszyny wirtualnej maszyny oraz przypisują tworzonej maszynie ustawienia domyślne przypisane do wybranego systemu.
Rysunek 12 VirtualBox - Tworzenie maszyny - Nazwa maszyny
Kolejnym krokiem jest przydzielenie odpowiedniej ilości pamięci RAM tworzonemu komputerowi. Tu jesteśmy ograniczeni ilością fizycznie dostępnej i zainstalowanej pamięci w fizycznej maszynie. Oczywiście im więcej przydzielimy wirtualnemu komputerowi tym szybciej będzie pracował, lecz nie należy przesadzać by nie okazało się że fizyczna maszyna z braku pamięci RAM nagle nam zwolni.
Rysunek 13 VirtualBox - Tworzenie maszyny - ilość pamięci RAM
Każdy komputer ma dysk twardy więc kolejne opcje związane są z określeniem dysku twardego. Wybierając opcję Do not add a virtual hard drive rezygnujemy z dodania dysku twardego do tworzonej maszyny. Opcja Create a virtual hard drive now spowoduje wywołanie kolejnego kreatora odpowiedzialnego za utworzenie nowego, czystego dysku twardego. Natomiast jeżeli wybierzemy opcję Use an existing virtual hard drive file możemy wskazać ścieżkę do już istniejącego pliku dysku twardego uzyskanego np. z wcześniejszego utworzenia wirtualnej maszyny, eksportu z innego programu do wirtualizacji czy programu służącego do wirtualizacji fizycznych maszyn np. dsk2vhd (opis tu - http://slow7.pl/windows-7/95-odzyska-to-co-utracone?showall=&start=5)
Rysunek 14 VirtualBox - Tworzenie maszyny - Tworzenie/wybór dysku twardego
Kolejnym krokiem jest wybranie formatu naszego wirtualnego dysku i tu do wyboru mamy:
VDI – plik VirtualBoxa,
VMDK – pliki używane przez VMware (program do wirtualizacji),
VHD – pliki woluminów Microsoft, używane m.in. przez Microsoft Virtual PC czy MS Hyper-V,
HDD – plik utworzony przez Parallels Desktop czyli oprogramowanie do tworzenia i uruchamiania maszyn wirtualnych na komputerach typ Mac.
QED – pliki obrazów QED, QCOW (pełne wsparcie dla v1 i w trybie do odczytu dla v2)
Rysunek 15 VirtualBox - Tworzenie maszyny - format dysku twardego
Na następnym ekranie mamy dwie opcje do wyboru decydując się na Dynamically allocated – nasz plik pełniący rolę dysku twardego będzie się rozszerzał automatycznie w miarę potrzeby czyli dogrywania kolejnych danych w wirtualnej maszynie aż do zdefiniowanego przez nas rozmiaru maksymalnego. Wybierając Fixed size – od razu zostanie zarezerwowane całe przydzielone miejsce na fizycznym dysku twardym.
Rysunek 16 VirtualBox - Tworzenie maszyny - opcje dysku twardego
Dochodzimy do kroku w którym wybieramy rozmiar wirtualnego dysku twardego oraz definiujemy ścieżkę do pliku tworzącego nasz wirtualny dysk twardy.
Rysunek 17 VirtualBox - Tworzenie maszyny - lokalizacja i rozmiar dysku twardego
Po kliknięciu Create asystent tworzenia dysku twardego kończy swoje działanie, kolejne kliknięcie Create tworzy wirtualną maszynę, która powinna pojawić się w głównym oknie programu.
Rysunek 18 Virtualbox - Utworzona maszyna wraz z opisem
Przyszedł czas na uruchomienie wirtualnej maszyny. W tym celu klikamy na Start. Powinno pojawić się nowe okno z uruchamiającym się komputerem wraz z Asystentem pierwszego uruchomienia. Ja prywatnie okno asystenta zamykam wraz z wszystkimi pojawiającymi się po drodze oknami i czekam kiedy wirtualny komputer zgłasza brak sytemu. Bo niestety by móc korzystać z wirtualnego systemu Windows XP, Linux bądź Windows 7 trzeba go najpierw zainstalować tak jak to ma miejsce na fizycznej maszynie (świetne ćwiczenie dla osób chcących się nauczyć instalacji systemów, zanim spróbują tego na fizycznej maszynie)
OK mamy włączony wirtualny komputer trzeba się wziąć za instalację systemu. W tym celu przechodzimy do Device. Do wyboru mamy dwie drogi albo mamy system na fizycznym nośniku (CD, DVD) wtedy nośnik umieszczamy w napędzie wybierając odpowiednią literę dysku lub korzystamy z obrazu dysku klikając na Choose a virtual CD/DVD disk file…
Virtualbox wspiera następujące pliki obrazów:
dmg - instalatory programów z systemu Mac OS,
iso - format zapisu danych dysków optycznych,
cdr – format pliku obrazów z systemu Mac OS.
Jeżeli posiadasz obraz wykonany w innym programie np. Alcohol/Nero/CloneCd bądź innym będziesz musiał wykonać konwersję do formatu obsługiwanego przez VirtualBox – najlepiej wybierz ISO. Możesz użyć programu opisywanego tu - http://slow7.pl/windows-7/95-odzyska-to-co-utracone?showall=&start=3 - OSFMount lub skorzystać z świetnego programu jakim jest UltraIso bądź MagicISO.
W moim przypadku wybrałem obraz systemu zapisanego w formacie ISO.
Rysunek 19 VirtualBox - Wybór dysku
Po zrestartowaniu maszyny zaczyna się proces instalacji systemu operacyjnego.
Rysunek 20 VirtualBox - Instalacja systemu
Po przejściu całego procesu instalacji systemu, możemy się cieszyć naszym wirtualny komputerem.
Na konie już po zainstalowaniu systemu należy pamiętać o doinstalowaniu w wirtualnej maszynie Guest Additions. Zrobimy to klikając na Devices i wybierając Install Guest Additions. Pozwoli nam to na dodanie dodatkowych funkcji do wirtualizowanego systemu. Guest Additions jest zestawem dodatków dla poszczególnych systemów operacyjnych, które po zainstalowaniu pozwalają na wygodniejszą współpracę między systemem hosta a tym zainstalowanym na maszynie wirtualnej. Dodatek poprawia wyświetlanie obrazu, usprawnia integrację myszy oraz umożliwia przełączanie widoku maszyny (oraz jeszcze parę innych funkcji). Jak będziesz często korzystał z wirtualnej maszyny to szczerze polecam zainstalowanie dodatków twoja praca będzie po prostu łatwiejsza. Po instalacji niezbędny jest restart wirtualnej maszyny.
Rysunek 21 VirtualBox - Instalacja Guest Additions
Zajrzyjmy teraz do opcji jakie nam oferuje Virtualbox. Po zaznaczeniu interesującego nas systemu, kliknięciu PPM i wybraniu Settings ukażą się nam dodatkowe opcje, pozwalające skonfigurować nasz wirtualny komputer.
Rysunek 22 VirtualBox - Ustawienia maszyny
General – Basic
Zakładka służąca do zmiany nazwy zainstalowanego systemu ajk i typu wirtualnej maszyny (opcje służące do identyfikacji wirtualnych maszyn).
Rysunek 23 VirtualBox - Ustawienia maszyny - Zakładka General-Basic
General – Advanced
Opcje odpowiedzialne m.in. za:
Rysunek 24 VirtualBox - Ustawienia maszyny - Zakładka General-Advanced
Snapshot folder – folder w którym są przechowywane tak zwane migawki systemu. Na razie wystarczy jak powiem że są to zapisane stany maszyny, można to porównać do savu w grze, migawka pozwala nam na przywrócenie stanu maszyny w chwili jej wykonania (więcej w dalszej części artykułu).
Shared Clipboard – współdzielenie schowka systemowego. Do wyboru opcje:
Disabled – wyłączenie współdzielenia schowka,
Host to Guest – schowek włączony ale tylko w kierunku z maszyny fizycznej do maszyny wirtualnej,
Guest to Host – schowek włączony ale tylko w kierunku z maszyny wirtualnej do maszyny fizycznej,
Biderectional – schowek włączony w obu kierunkach, możliwość kopiowania w obie strony.
Drag'n'Drop – włączenie opcji przeciągnij-upuść pomiędzy aktywnymi oknami. Tak samo jak powyżej mamy do wyboru albo wyłączenie tej funkcjonalności albo ustalenia kierunku działania.
Removable Media – zaznaczenie opcji Remember Runtime Changes, spowoduje zapisanie w pliku konfiguracyjnym maszyny wirtualnej wykorzystywanych nośników wymiennych.
Mini ToolBar – opcja uaktywnia dodatkowy pasek odpowiadający za zarządzanie maszyną wirtualną. Pasek pojawia się po zmianie widoku wyświetlania na tryb pełnego ekranu (Fullscreen) oraz tzw. trybu Seamless Mode. Po włączeniu tego trybu zostaje wyłączone obramowanie okna wirtualnej maszyny a także znika pulpit. Jedynym pozostawionym elementem jest jedynie pasek startowy i okna otwartych programów. Dzięki temu trybowi możliwe jest równoległe współdzielenie na jednym pulpicie okien systemu hosta i okien systemu wirtualnego np. okna z systemu Linux pokazują się obok okien z systemu Windows. Możliwe są również wszystkie operacje pomiędzy tymi oknami np. kopiowanie.
Rysunek 25 VirtualBox - tryb Seamless Mode
Zaznaczenie opcji Show at top of Screen spowoduje przeniesienie belki w górną część okna (domyślnie znajduje się ona na dole ekranu)
General – Description
Sekcja ta pozwala na wprowadzenie dokładnego opisu maszyny. Można tutaj przechowywać wszelkie informacje związane z wirtualną maszyną m.in. opisy, logi, informacje o założonych kontach i przypisanych im hasłach czy opis zainstalowanych programów itp.
Rysunek 26 VirtualBox - Ustawienia maszyny - Zakładka General-Description
System - Motherboard
Pierwszą zakładka nosi nazwę Motherboard i jak nazwa wskazuje may tu zgrupowane urządzenia związane z płytą główną naszego wirtualnego komputera. Mamy wpływ na następujące opcje:
Base Memory - suwak za pomocą którego możemy kontrolować ilość przydzielanej pamięci RAM do wirtualnego hosta.
Boot Order – opcje związane z wybraniem źródła startu wirtualnej maszyny czyli kolejność (którą możemy zmieniać) bootowania (wyszukiwania systemu).
Chipset – opcja pozwalająca na wybranie wirtualnego chipsetu. Domyślnie ustawione jest na PIIX3, i to ustawienie jest najczęściej stosowane. Choć mnie prywatnie nie udało się przy takim ustawieniu zainstalować Windows 8, Ubuntu 12.04 oraz niektórych wersji Windows 7 (problem też jest przy instalacji Mac OS X) wymagane było ustawienie wersji ICH9.
Enable IO APIC - funkcja odpowiadająca za kontrolę przerwań sprzętowych, niezalecane jest jej wyłączenie w szczególności gdy wirtualizowanym systemem jest Windows.
Enable EFI - wyłączenie tradycyjnego BIOS-u a uruchomienie EFI.
Hardware clock in UTC time - czas w formacie UTC (wymagane przez systemy Unix).
Enable absolute pointing device - wsparcie dla innych urządzeń wskazujących (np. tablety, ekrany dotykowe), odhaczenie opcji spowoduje że będą wspierane jedynie klasyczne myszki.
Rysunek 27 VirtualBox - Ustawienia maszyny - Zakładka System-Motherboard
System - Processor
Opcje związane z procesorem:
Processor – suwak, który pozwala na przydzielenie liczby procesorów przypisanych do danej maszyny wirtualnej.
Execution Gap (domyślna wartość 100%) czas odpowiedzi fizycznego procesora na instrukcje wykonywane w wirtualnym hoście.
Enable PAE/NX - rozszerzone adresowanie procesora.
Rysunek 28 VirtualBox - Ustawienia maszyny - Zakładka System-Processor
System – Acceleration
Funkcje związane z akceleracją, wirtualnego hosta. Możliwość ustawienia tych opcji związane jest z typem posiadanego procesora i tego czy wspiera on wirtualizację. Jeśli twój procesor posiada takie funkcje to nie zapomnij ich włączyć w BIOS-ie komputera, z mojego doświadczenia wiem że domyślnie ta funkcja procesora jest najczęściej wyłączona.
Rysunek 29 VirtualBox - Ustawienia maszyny - Zakładka System-Acceleration
Display – Video
W zakładce Display zostały zgrupowane opcje związane z grafiką. Mamy wpływ na następujące ustawienia:
Video Memory - podobnie jak w przypadku pamięci RAM, suwakiem przydzielamy pamięć dostępną dla naszej wirtualnej karty graficznej.
Monitor Count - opcja odpowiedzialna za dodanie kolejnych wirtualnych monitorów.
Rysunek 30 VirtualBox - wirtualne monitory
Enable 3D Acceleration oraz Enable 2D Video Acceleration – włączenie tych opcji spowoduje że wirtualny host będzie mógł korzystać z takich bajerów jak interfejs Aero w Windows czy dodatkowych funkcji graficznych np. w Ubuntu. Opcje te uruchamiają wsparcie sprzętowe dla procesów tworzenia grafiki i wyświetlania obrazów 2D oraz 3D.
Rysunek 31 VirtualBox - Ustawienia maszyny - Zakładka Display-Video
Display – Remote display
Sekcja o nazwie Remote Display umożliwia nam skonfigurowanie dostępu zdalnego do naszych wirtualnych maszyn.
Rysunek 32 VirtualBox - Ustawienia maszyny - Zakładka Display-Remote display
Storage
W zakładce tej mamy pogrupowane opcje do zarządzania/dodawania wirtualnych dysków, które są podłączane do maszyn wirtualnych.
Po kliknięciu na dany dysk mamy informację o fizycznej lokalizacji pliku wirtualnego dysku, rozmiarze dysku czy format pliku.
Rysunek 33 VirtualBox - Ustawienia maszyny - Zakładka Storage
Dodawanie nowych dysków odbywa się za pomocą ikon z plusem i minusem umieszczonych pod listą dostępnych/aktywnych dysków. Dodanie dysku następuje poprzez dodanie w pierwszej kolejności kontrolera dysku (IDE/SATA/SCSI/SAS/Floppy Controller) i podłączeniu do wybranego kontrolera nowego nośnika.
Po kliknięciu na kontroler i wybraniu ikony z plusem mamy do wyboru dodanie typu dysku tj. CD/DVD Device bądź Hard Disk Device.
Rysunek 34 VirtualBox - dodawanie nowego napędu/dysku
Wybranie Add CD/DVD Device spowoduje dodanie kolejnego napędu CD/DVD, natomiast po wyborze Add Hard Disk będziemy mieli możliwość wybrania już istniejącego pliku dysku twardego bądź stworzenie nowego.
Rysunek 35 VirtualBox - wybór typu dysku
Audio
Jak się pewnie domyślasz na zakładce tej znajdują się opcje związane z dźwiękiem. Zaznaczenie opcji Enable Audio spowoduje, że będą aktywne funkcje audio w systemie gościa. Opcje poniżej decydują:
Host Audio Driver – wybór karty dźwiękowej zainstalowanej w maszynie gospodarza, z której będzie korzystał host wirtualny. Wybranie opcji Null Audio Driver wymusi na maszynie wirtualnej dodanie swojej karty dźwiękowej lecz nie będzie ona sprzężona z kartą fizyczną.
Audio Controller – określamy typ wirtualnej karty dźwiękowej.
Rysunek 36 VirtualBox - Ustawienia maszyny - Zakładka Audio
Network
Opcje związane z siecią należą do tych najważniejszych do skonfigurowania, należy mieć świadomość że integracja z istniejącą siecią komputerową może wystąpić na różnym poziomie.
Jak widać na poniższym rysunku naszej maszynie goszczonej można przypisać 4 wirtualne karty sieciowe. Włączenie karty odbywa się poprzez zaznaczenie opcji Enable Network Adapter na poszczególnych kartach.
Rysunek 37 VirtualBox - Ustawienia maszyny - Zakładka Network
Po włączeniu karty sieciowej mamy wpływ na dodatkowe ustawienia czyli możemy wybrać sposób zachowania się naszej karty sieciowej. Do wyboru mamy następujące opcje:
Not Attached – brak połączenia sieciowego.
NAT – domyślne ustawienie VirtualBox, komputer zachowuje się tak jak by był podłączony do routera, wirtualny host działa w całkiem innej podsieci niż komputer gospodarz. Gdy zależy nam tylko na dostępie do Internetu ustawienie całkowicie wystarczalne natomiast gdy chcemy wirtualną maszynę zintegrować z istniejącą infrastrukturą sieciową posiada swoje ograniczenia. Jeśli zdecydujemy się na wybranie tego ustawienia, po rozwinięciu opcji Advanced jeśli zajdzie taka potrzeba będziemy mogli skorzystać z Port Forwarding. Zasada przekierowań portów jest analogiczna do ustawień w routerze czyli przekierowanie umożliwia nam dostęp do usług sieciowych działających na określonych portach w stworzonej maszynie wirtualnej. Przekierowanie odbywa się poprzez stworzenie odpowiednich reguł w tabeli dostępnej po uruchomieniu Port Forwarding.
Bridged Networking – wybór tej opcji spowoduje połączenie (zmostkowanie) karty fizycznej z kartą wirtualną. Takie ustawienie spowoduje, że nasza wirtualna maszyna będzie dostępna z poziomu naszej sieci czyli hosty działające w sieci zobaczą maszynę wirtualną jako kolejny komputer. Komputer gość będzie działał w tej samej sieci co komputer gospodarz.
Internal Networking - wybór opcji spowoduje stworzenie izolowanego, wirtualnego środowiska sieciowego w której będą mogły porozumiewać się między sobą tylko wirtualne maszyny. Tryb ten świetnie nadaje się do wszelakich testów. Po wybraniu opcji możemy skonfigurować nazwę naszej wewnętrznej sieci.
Host-only Networking – zasada działania jest taka sama jak powyżej z tą małą różnicą że umożliwimy łączność naszej fizycznej maszyny z maszynami wirtualnymi. Tworzony jest dodatkowy kontroler sieci, umożliwiający wzajemną komunikację pomiędzy hostami.
Generic Networking – możliwość użycia dowolnego sterownika.
Dodatkowo po rozwinięciu Advanced mamy możliwość skonfigurowania poza wspomnianym już Port Forwarding dodatkowych opcji a mianowicie:
- Typ emulowanej karty, gdzie spośród dostępnych modeli możemy wybrać ten który będzie spełniał nasze wymagania.
- Promiscuous Mode - konfiguruje sposób zachowania się naszego interfejsu sieciowego. Polegający na odbieraniu całego ruchu docierającego do karty sieciowej, nie tylko skierowanego na adres MAC karty sieciowej. Dostępne opcje to:
- Deny – wyłączenie, zabronienie,
- Allow VM’s – zezwól tylko dla maszyn wirtualnych,
- Allow All – zezwól dla wszystkich.
- modyfikacja adresu MAC karty sieciowej.
Serial Ports
Opcje związane z portami, można włączyć obsługę portów serialowych.
Rysunek 38 VirtualBox - Ustawienia maszyny - Zakładka Serial Ports
USB
VirtualBox zapewnia możliwość korzystania z urządzeń pamięci masowej (dyski twarde, pendrive) podłączonych do komputera fizycznego za pomocą interfejsu USB (ale nie tylko bo myszki, klawiatury też). Konfiguracja tych zasobów odbywa się w ustawieniach maszyny wirtualnej na zakładce USB.
Rysunek 39 VirtualBox - Ustawienia maszyny - Zakładka USB
Shared Folders
W VirtualBox-ie możemy wykonać współdzielenie danych dyskowych pomiędzy maszyną hostem a maszyną gościem. Tak naprawdę te współdzielenie można wykonać na kilka sposobów a jednym z nich jest konfiguracja wspólnych folderów dla maszyny hosta i gościa. Aby tego dokonać klikamy na danego hosta i poprzez Settings przechodzimy do zakładki Shared Folders w której możemy ustalić listę zasobów współdzielonych.
Rysunek 40 VirtualBox - Ustawienia maszyny - Zakładka Shared Folders
Zasób dodaje się poprzez kliknięcie ikonki folderu z plusem lub wciśnięcie klawisza INS. Pojawia się nam okno dodawania zasobu.
Rysunek 41 VirtualBox - Ustawienia folderu sieciowego
W polu Folder Path określamy fizyczną lokalizację współdzielonego folderu natomiast pole Folder Name pozwala nam zdefiniować nazwę zasobu. Zasób pojawia się w oknie Komputer, jako dysk sieciowy.
Dodatkowe opcje które możemy zdefiniować to:
- Read-Only – zezwól tylko na odczyt z folderu,
- Auto-Mount – automatyczne podłączenie zasobu wraz z startem systemu.
Praca z VirtualBox
Jedną z pierwszych czynności jaką powinniśmy się zainteresować po instalacji systemu w nowej maszynie wirtualnej jest wykonanie tzw. migawki (ang. snapshots). Migawka jest niczym innym jak zapisaniem stanu systemu w momencie jej wykonania. Dzięki nim zawsze możemy wykonać powrót (cofnięcie zmian) do stanu w momencie zrobienia migawki. Co nam to daje? Otóż nie ważne co zrobimy i tak możemy cofnąć wprowadzone przez nas zmiany. Mechanizm ten działa dzięki temu, że jest tworzony specjalny plik w którym są zapisywane wszystkie informacje/dane wykonane przez nas od momentu zrobienia migawki. Jak się można domyśleć plik ten rośnie w miarę korzystania z wirtualnego systemu. Mechanizm snapshots kryje pewną pułapkę o której należy mieć świadomość a mianowicie jeśli wykonamy migawkę w poniedziałek a w piątek wykonamy powrót do tej migawki, wszystkie dane zapisane w wirtualnym systemie pomiędzy poniedziałkiem a piątkiem ulegną skasowaniu.
Wykonanie samej migawki jest bardzo proste w głównym oknie programu w prawym górnym rogu znajduje się przycisk Snapshots, wystarczy tylko kliknąć ten przycisk by otworzyć odpowiedzialne za zarządzanie migawkami okno, oczywiście musimy zaznaczyć (z lewej strony) interesującą nas maszynę i wybrać ikonę aparatu.
Rysunek 42 VirtualBox - Tworzenie migawki systemu
Kolejne ikony służą do zarządzania migawkami.
Rysunek 43 VirtualBox - opcje okna Snapshot
Bardzo fajną opcją jest opcja Informacji o migawce, w której znajdują się wszystkie dane służące identyfikacji danego zrzutu plus pole opisu w którym możemy zamieszczać własne uwagi.
Rysunek 44 VirtualBox - informacje o migawce
Jeszcze jeden przycisk wymaga omówienia a jest to mianowicie przycisk klonowania maszyny a raczej jej stanu w momencie wykonania migawki. Wciśnięcie tego przycisku spowoduje utworzenie nowej wirtualnej maszyny w której będą zawarte wszystkie informacje/dane do momentu zrobienia migawki.
Innym sposobem sklonowania maszyny jest kliknięcie na interesującą nas maszynę i wybrania opcji Clone (przydatne gdy szybko chcemy mieć np.3 jednakowe maszyny, wyobraź sobie teraz ile byś musiał czasu poświęcić by wykonać to fizycznie).
Na razie tylko wspomnę ale z klonowaniem maszyn jest pewien problem a mianowicie kiedy wykonamy tą operację to okaże się że po uruchomieniu tak sklonowanej operacji będzie trzeba jeszcze raz aktywować system Windows. Jest na to pewien sposób, więcej szczegółów w dalszej części artykułu.
Rysunek 45 VirtualBox - Klonowanie maszyny
Po uruchomieniu wirtualnej maszyny w menu Machine mamy dostępne następujące opcje:
Rysunek 46 VirtualBox - Menu Machine
- Settings – ustawienia maszyny wirtualnej,
- Take Snapshot – migawka systemu,
- Take Screenshot – wykonaj zrzut ekranu, wirtualnej maszyny,
- Session Information – informacje o aktualnej sesji, statystyki oraz podsumowanie ustawień maszyny,
- Disable Mouse Integration – blokada myszki,
- Insert Ctrl-Alt-Del – wysłanie sygnału naciśnięcia Ctrl-Alt-Del (przydatne przy logowaniu oraz wywołaniu menedżera zadań),
- Pause – wstrzymanie pracy wirtualnej maszyny,
- Reset – reset,
- ACPI Shutdown – wysłanie sygnału zamknięcia,
- Close – zamknięcie maszyny.
Menu View: - zmiana widoków.
Rysunek 47 VirtualBox - Menu View
- Switch to Fullscreen – tryb pełnoekranowy,
- Switch to Seamless Mode – tryb Seamless Mode – współdzielone okna system gospodarza I wirtualnej maszyny,
- Switch to Scale Mode – tryb samego okna które można dowolnie skalować,
- Auto-resize Guest Display – automatyczne dopasowanie wielkości pulpit wirtualnej maszyny do wielkości okna.
- Adjust Window Size – dopasuj rozmiar okna.
Menu Devices: - zarządzanie urządzeniami.
Rysunek 48 Menu Devices
- CD/DVD Devices – zamontowanie obrazu płyty CD/DVD bądź użycie fizycznego napędu komputera. Pliki w systemie gościa będą widoczne jakby były nagrane na płycie. Jeśli mamy wykonany obraz np. płyty instalacyjnej Windows 7 musimy wskazać odpowiedni plik, jeśli zaś mamy fizyczną płytę i chcemy ją użyć w wirtualnej maszynie wybieramy napęd w którym ta płyta jest umieszczona.
- USB Devices – przekazanie urządzenia podłączonego przez USB do maszyny gościa, jeśli mamy pendrive z danymi i chcemy go użyć w wirtualnym środowisku wybieramy go z listy, następuje odmontowanie urządzenia w systemie gospodarza i zamontowanie w systemie gościa.
- Shared Clipboard – sterowanie ustawieniami schowka systemowego.
- Drag’n’Drop – sterowanie ustawieniami przeciągnij/upuść.
- Network Adapters – ustawienia kart sieciowych.
- Shared Folders – foldery udostępnione.
- Enable Remote Display – włączenie pulpit zdalnego.
- Install Guest Additions – instalacja dodatkowych rozszerzeń.
Menu Help:
Rysunek 49 Menu Help
- Contents – pomoc program, help.
- VirtualBox Web Site – strona internetowa projektu.
- Reset All Warnings – zresetowanie powiadomień.
- About VirtualBox – wersja programu.
W głównym oknie programu mamy umiejscowione dwie ciekawe funkcje a mianowicie:
Virtual Media Manager – narzędzie służące do zarządzania dyskami wirtualnych maszyn a także plikami montowanych obrazów.
Rysunek 50 VirtualBox - Virtual Media Manager
Drugim przydatnym narzędziem są opcje eksportu i importu maszyny. Możemy naszą przygotowaną wirtualną maszynę wyeksportować do pliku *.ovf/ova (Open Virtualization Format) a następnie gdy np. jesteśmy wykładowcą/nauczycielem przekazać uczniom celem wykonania już konkretnych zadań lub gdy np. chcemy maszyny przenieść pomiędzy fizycznymi hostami.
Eksport maszyny przydaje się również by przenieść naszą wirtualną maszynę do innego środowiska wirtualizacyjnego np. pomiędzy różnymi programami, można wykonać eksport maszyny z VirtualBox’a by później tą samą maszynę uruchomić w VMware.
By wykonać eksport wybieramy w głównym oknie programu opcję File a następnie Export Appliance.
Rysunek 51 VirtualBox - Export maszyny
Kolejnym krokiem jest wybranie interesującej nas maszyny.
Rysunek 52 VirtualBox - Export maszyny - wybór maszyny
Następnie wybieramy format do wyboru mamy:
OFV – pliki będą zapisane oddzielnie,
OFA – pliki zostaną połączone w jeden plik.
Opcje Write legacy OVF 0.9 oraz Write Manifest file stosowane w celu zachowania kompatybilności z innymi produktami.
Rysunek 53 VirtualBox - Export maszyny - wybór formatu
W kolejnym oknie możemy dodać dodatkowe informacje.
Rysunek 54 VirtualBox - Export maszyny - informacje dodatkowe
Po kliknięciu Export maszyna zostaje zapisana do docelowego, wybranego formatu.
Rysunek 55 VirtualBox - Export maszyny
Jeśli zaś chcemy maszynę zaimportować z menu File wybieramy Import Appliance.
Rysunek 56 VirtualBox - Import maszyny
Następnie wskazujemy plik maszyny.
Rysunek 57 VirtualBox - Import maszyny - wybór pliku
Kolejnym krokiem jest dostosowanie ustawień maszyny.
Rysunek 58 VirtualBox - Import maszyny - dostosowanie ustawień
Po kliknięciu Import, następuje proces importowania maszyny.
Rysunek 59 VirtualBox - Import maszyny - Import maszyny
VirtualBox i wiersz poleceń.
Tworzenie nowej wirtualnej maszyny:
Tworzymy nową wirtualną maszynę o nazwie win7_test, określamy domyślne ustawienia poprzez zdefiniowanie systemu gościa, określamy folder bazowy i dodajemy maszynę (parametr register, bez tego parametru utworzylibyśmy tylko plik z ustawieniami)
vboxmanage createvm -name win7_test -ostype Windows7 -basefolder "d:\maszyny wirtualne" -register
Rysunek 60 VirtualBox - CLI - utworzenie maszyny
Listę dostępnych typów systemu uzyskasz po wydaniu polecenia – vboxmanage list ostypes
Rysunek 61 VirtualBox - CLI - typy systemów
Dodanie kontrolera:
Zanim będzie można dodać dysk, musimy zdefiniować kontroler w naszym przypadku kontroler sata, typ intelahci a nazwa kontrolera to po prostu Kontroler sata.
vboxmanage storagectl "win7_test" --name "Kontroler sata" --add sata --controller intelahci
Rysunek 62 VirtualBox - CLI - dodanie kontrolera SATA
Dostępne kontrolery to - ide/sata/scsi/floppy.
Natomiast typy kontrolerów to - LsiLogic / LSILogicSAS / BusLogic / IntelAhci / PIIX3 / PIIX4 / ICH6 / I82078 (typ zależny od wybranego kontrolera).
Tworzenie dysku:
Po dodaniu kontrolera musimy stworzyć wirtualny dysk, określamy trzy parametry a mianowicie położenie pliku kontenera dysku wirtualnej maszyny, rozmiar oraz typ (parametr standard definiuje zmianę wielkości pliku kontenera dysku w miarę dodawania nowych danych w systemie gościa, aby zarezerwować od razu całe wymagane miejsce użyj parametru fixed)
vboxmanage createhd --filename "d:\maszyny wirtualne\dysk_win7_test.vdi" --variant standard --size 15000
Rysunek 63 VirtualBox - CLI - tworzenie dysku
Podłączenie utworzonego dysku do kontrolera:
Kolejny krok to przypisanie dysku do kontrolera użyte parametry to – nazwa maszyny wirtualnej (win7_test), port, numer kolejny urządzenia, typ i lokalizacja pliku kontenera wirtualnej maszyny.
vboxmanage storageattach "win7_test" --storagectl "Kontroler sata" --port 0 --device 0 --type hdd --medium "d:\maszyny wirtualne\dysk_win7_test.vdi"
Rysunek 64 VirtualBox - CLI - powiązanie dysku z kontrolerem
Dostępne typy dysków to - dvddrive / hdd / fdd.
Wypadało by mieć jeszcze obsługę CD/DVD więc tak dla wprawy utwórzmy nowy kontroler ale tym razem nie sata tylko ide.
vboxmanage storagectl "win7_test" --name "Kontroler ide" --add ide --controller piix4
Rysunek 65 VirtualBox - CLI - utworzenie kontrolera IDE
I do utworzonego kontrolera przypiszmy dysk CD/DVD wraz z zamontowaniem pliku obrazu płyty:
vboxmanage storageattach "win7_test" --storagectl "Kontroler ide" --port 0 --device 0 --type dvddrive --medium "D:\Temp\Windows7_SP1_MSDN_pl\pl_windows_7_ultimate_with_sp1_x86_dvd_619095.iso"
Rysunek 66 VirtualBox - CLI - powiązanie dysku CD/DVD z kontrolerem IDE i zamontowanie obrazu płyty
Na koniec mała modyfikacja a mianowicie: zwiększenie rozmiaru pamięci RAM do 1024 MB, włączenie acpi, zmiana kolejności bootowania wirtualnego systemu i ustawienie karty sieciowej w tryb NAT.
Parametry pracy maszyny: vboxmanage modifyvm "win7_test" --memory 1024 --acpi on --boot1 dvd --nic1 nat
Rysunek 67 VirtualBox - CLI - modyfikacja ustawień maszyny
Dostępne tryby pracy karty sieciowej to - none / null / nat / bridged / intnet / hostonly / vde.
Można również sprecyzować użyty sterownik do wirtualizacji karty sieciowej – parametr:
–nictype<numer interfejsu> <opcje> - dostępne opcje to Am79C970A / Am79C973 / 82540EM / 82543GC / 82545EM / virtio.
Kontrolę wprowadzonych ustawień możesz przeprowadzić korzystając z polecenia –
VBoxManage showvminfo <nazwa wirtualnej maszyny>
Wywołanie polecenia spowoduje wyświetlenie wszystkich ustawień wirtualnej maszyny.
Rysunek 68 VirtualBox - CLI - podsumowanie ustawień maszyny
Do doprecyzowania ustawień maszyny możesz jeszcze użyć np. takiego polecenia:
VBoxManage modifyvm win7_test --vram 128 --accelerate3d on --audio alsa --audiocontroller ac97
-vram – wielkość pamięci karty graficznej w MB,
-accelerate3d – akceleracja 3d w systemie gościa opcje on / off,
-audio – parametr odpowiedzialny za dźwięk, dostępne opcje to none /null / oss / alsa / pulse,
-audiocontroller - kontroler dźwięku do wyboru - ac97 / hda / sb16.
Po określeniu wszystkich opcji trzeba jeszcze skonfigurować ustawienie dotyczące pulpitu zdalnego, bo przecież trzeba jakoś ten system zainstalować. Do włączenia pulpitu zdalnego a tak naprawdę serwer RDP VirtualBox-a posłuży nam polecenie (opcje związane z dostępem RDP po zainstalowaniu VirtualBox Oracle VM VirtualBox Extension Pack):
vboxmanage modifyvm win7_test –-vrde on –-vrdeport 3389 –-vrdeaddress 192.168.0.50
Rysunek 69 VirtualBox - CLI - konfiguracja puplitu zdalnego
W wcześniejszych wersiach VirtualBox obowiązywały parametry --vrdp, --vrdpport, --vrdpaddress.
-vrde – włączenie obsługi dostępu poprzez Remote Display,
-vrdeport – port nasłuchiwania usługi (domyślnie 3389),
-vrdeaddress – adres IP komputera hosta.
Poprawność instalacji dodatku możesz zweryfikować wydając polecenie:
VBoxManage list extpacks
Rysunek 70 VirtualBox - CLI - lista zainstalownych dodatków
Nadszedł czas by uruchomić tak stworzoną maszynę:
vboxmanage startvm win7_test --type headless
Rysunek 71 VirtualBox - CLI - uruchomienie maszyny
Dodanie parametru --type headless spowoduje uruchomienie maszyny z obsługą serwera RDP, co da nam możliwość podejrzenia maszyny poprzez Pulpit zdalny.
Z mojego doświadczenia jest to najbardziej problematyczny krok (jeśli chodzi o Windows, bo np. w Ubuntu tego problemu nie miałem), ponieważ nie zawsze połączenie z pulpitem zdalnym chce działać. Co wtedy zrobić??? Spróbować połączyć się poprzez adres pętli zwrotnej czyli 127.0.0.1, jak by to nie pomogło użyć kolejny czyli 127.0.0.2. Pomaga również zmiana domyślnego portu nasłuchiwania czyli zamiast portu 3389 użyć np. port 4000 ale wtedy trzeba pamiętać by w adresie odwołać się do tego portu np. 192.168.0.50:4000.
Poleceniem poniżej wyłączymy wirtualny komputer (bezpieczne zamknięcie systemu):
vboxmanage controlvm win7_test acpipowerbutton
Zamknięcie wirtualnej maszyny:
vboxmanage controlvm win7_test poweroff
Rysunek 72 VirtualBox - CLI - wyłączenie maszyny
Wstrzymanie:
vboxmanage controlvm win7_test pause
Powrót:
vboxmanage controlvm win7_test resume
Reset:
vboxmanage controlvm win7_test reset
Utworzenie migawki – podajemy nazwę wirtualnej maszyny oraz nazwę migawki np.
VBoxManage snapshot win7_test take migawka_czystysystem
Cofnięcie - podajemy nazwę wirtualnej maszyny oraz nazwę migawki.
VBoxManage snapshot win7_test restore migawka_czystysystem
Klonowanie maszyny.
vboxmanage clonevm win7_test --name win7_test_clone --register
Na koniec rozwiązanie wspomnianego wcześniej problem z klonowaniem maszyn.
Na początek tworzymy nową wirtualną maszynę. W moim przypadku instalowanym systemem będzie Windows 8.
Rysunek 73 VirtualBox - wirtualna maszyna
Systemu jeszcze nie instalujemy lecz lokalizujemy pliki maszyny. Interesuje nas plik o rozszerzeniu *.vbox w którym są zawarte informacje o naszej maszynie. Maszyna nazywa się win_8 więc plik będzie miał nazwę win_8.vbox. Można go bardzo łatwo zlokalizować wystarczy kliknąć na naszą wirtualną maszynę i dalej PPM i wybrać Show in Explorer.
Rysunek 74 VirtualBox - lokalizacja plików maszyny
Interesuje nas ciąg Machine uuid. W tym ciągu cały problem ponieważ jeśli sklonujemy maszynę ciąg ten ulegnie zmianie a system Windows uzna, że jest uruchamiany na innym komputerze. To tak jakbyśmy wyjęli dysk twardy i przełożyli do innego komputera.
Na rysunku poniżej maszyna z zainstalowanym i aktywowanym systemem Windows 7 (po lewej) zaś po prawej ta sama maszyna tylko sklonowana. Po uruchomieniu maszyny system Windows wymaga ponownej aktywacji.
Rysunek 75 VirtualBox - porównanie uuid
Moja stworzona maszyna jak widać na rysunku poniżej ma uuid 98b562e0-4514-481d-8623-467b4cbd70f3c.
Rysunek 76 VirtualBox - sprawdzenie uuid
By ominąć problem ponownej aktywacji wygenerujemy sobie nowy uuid np. z pomocą tej strony http://createguid.com/ Mój nowy uuid będzie miał postać 43ec5171-886d-4d63-954e-3ba76450e67a.
Kolejnym krokiem jest wydanie polecenia:
vboxmanage modifyvm <machine uuid odczytany z pliku> --hardwareuuid <nowy wygenerowany>
czyli w tym przypadku:
vboxmanage modifyvm 98b562e0-4514-481d-8623-467b4cbd70f3 --hardwareuuid 43ec5171-886d-4d63-954e-3ba76450e67a
Rysunek 77 VirtualBox - polecenie
Polecenie dołączy do pliku konfiguracji maszyny uuid, który nie będzie się zmieniał wraz z operacją klonowania maszyny.
Jak widać na rysunku poniżej uuid nie uległ zmianie, po lewej maszyna oryginalna po prawej klon maszyny.
Rysunek 78 VirtualBox - porównanie uuid
Podsumowanie:
VirtualBox jest jednym z najpopularniejszych programów do wirtualizacji, niewątpliwym atutem programu jest licencja na której jest wydawany czyli free. Dodatkowymi zaletami programu są częste aktualizacje, ciągły rozwój platformy oraz mnogość obsługiwanych systemów. Program niezbędny dla tych którzy chcą sprawdzić wirtualizację w praktyce.
W następnej części – Vmware,
Bibliografia:
http://www.networld.pl/artykuly/369835_2/11.smakow.wirtualizacji.html
http://traxter-online.net/virtualbox-wirtualny-komputer-do-uruchamiania-kilku-systemow-jednoczesnie/
http://www.idg.pl/ftp/wirtualizacja.w.praktyce.html
http://www.systemyit.pl/wirtualizacja-opis/
http://www.itwadministracji.pl/numery/maj-2008/wirtualizacja-sposob-na-oszczednosci.html
http://imagin.com.pl/systemy/wirtualizacja-serwerow/technologie
http://webhosting.pl/Wirtualizacja.w.praktyce.Rodzaje.wirtualizacji?page=3
http://www.webupd8.org/2011/02/how-to-easily-resize-virtualbox-40-hard.html
http://blog.ezrodlo.pl/wirtualizacja/wady-i-zalety/
http://www.ubuntugeek.com/how-to-control-virtual-machines-virtualbox-using-vboxmanage.html
http://www.howtogeek.com/125640/how-to-convert-virtual-machines-between-virtualbox-and-vmware/
http://www.windowstablet.tv/windows-tips/190-virtualbox-clone-windows-activation/
http://www.virtualbox.org/manual/
Komentarze
Sierra [10.12] + Win7
- Można?