Oracle VirtualBox 6

Wprowadzenie teoretyczne do lekcji

1. O programie Oracle VirtualBox.
VirtualBox jest to program służący jako hipernadzorca (hypervisor) typu drugiego, czyli mówiąc innymi słowy – program wirtualizujący systemy operacyjne. Typ 2 oznacza, że nie działa natywnie i bezpośrednio na sprzęcie, a jest kontrolowany przez coś wyższego – nasz system operacyjny. Gdyby był typu pierwszego to ON by kontrolował nasz OS, a także systemy zwirtualizowane. Producentem programu VirtualBox początkowo było niemiecka firma Innotek. Ta została przejęta przez Sun Microsystems, który z kolei został wchłonięty przez Oracle Corporation.
Obecnie VB potrafi wirtualizować szeroką gamę systemów operacyjnych: Windows, Linux, macOS, OS/2, BSD oraz inne. Można by rzec, że program jest do wszystkiego, a jak do wszystkiego to... do niczego i tak tym razem jest. Spośród tych wszystkich grup systemów operacyjnych, VirtualBox potrafi bezbłędnie obsłużyć jednie kilka z nich, np. Windows XP czy Windows 7. Całkowicie awaryjnie działa obsługa macOS. Jednakże na sam początek przygody z wirtualizacją, VirtualBox jest całkiem dobry. Chociaż szybko się okaże, że trzeba będzie migrować na alternatywne – bardziej dopracowane, lecz płatne – rozwiązania jak VMware Workstation czy Hyper-V.
Oracle jednak prężnie pracuje nad programem i na chwilę obecną, może się on pochwalić dość bogatą listą funkcjonalności znanych z produktów komercyjnych jak: Snapshoty, tryb Seamless, emulacja wielu urządzeń czy rozbudowane tryby pracy sieci.
Pobrać program można ze strony producenta: https://www.virtualbox.org/. Do tego polecam doinstalować Extension Pack, który rozszerzy nasz program o takie funkcjonalności jak PXE, RDP, obsługa USB 2.0 i 3.0 oraz wiele innych.


2. Interfejs programu VirtualBox 6.
Uruchamiając program, wita nas dość przyjemny i prosty w obsłudze panel kontrolny zwany VirtualBox Manager, czyli menadżer VB. Podzielony jest on na dwie sekcje:
Po lewej znajduje się lista obecnie utworzonych maszyn (np. "FreeBSD" na zdjęciu niżej) oraz grup (np. "Linux Systems").
Po prawej ukazuje się większe pole, które zawiera podstawowe informacje o obecnie wybranej maszynie. Z jego poziomu możemy sprawdzić takie parametry jak: Nazwa, OS, RAM, Kontrolery pamięci, Sieć i tym podobne. Dodatkowo na górze znajdują się przyciski nawigacyjne: New (Nowa), Settings (Ustawienia), Discard (Odrzuć), Start (Start).
New wyzwala okna kreatora nowej maszyny wirtualnej, Settings pozwala na wywołanie konfiguracji naszej VMki, Discard służy do odrzucenia zapisanego stanu maszyny (jeżeli takowy został zapisany), Start umożliwia uruchomienie maszyny wirtualnej. W oczy również rzuca się czarne okno z nazwą VMki – jest to nasz podgląd na to co się dzieje na ekranie maszyny.

Nowa maszyna wirtualna

Ogólnie rzecz ujmując – interfejs VirtualBoxa jest prosty jak budowa cepa, trzeba tylko mieć jakieś podstawowe pojęcie na temat informatyki… i chcieć.

I. Tworzenie wirtualnej maszyny.

Aby rozpocząć proces tworzenia maszyny wirtualnej, należy wybrać przycisk New. Ewentualnie kliknąć PPM na pole z listą maszyn i tam wybrać New. Uruchomi się prosty kreator tworzenia VMki, który krok po kroku poprowadzi nas przez cały ten proces. Wszystko jest dokładnie opisane, więc nie powinno być większego problemu ze zrozumieniem tego co się dzieje na ekranie. Pierwsze okno będzie pozwalało nam wybrać najbardziej podstawowe rzeczy dotyczące naszej maszyny. Są to:
Name (Nazwa) – jak sama nazwa mówi, tutaj wpisujemy nazwę maszyny. Może być ona dowolna, nie ma tutaj reguły. Warto jednak wspomnieć, że VirtualBox jest na tyle inteligentnym programem, że rozpoznaje niektóre wyrazy jakie są wpisywane w to pole i na ich podstawie potrafi określić docelowy system operacyjny. Np. wpisanie "Ubuntu" spowoduje, że program automatycznie wybierze w opcji Type Linux oraz Version system "Ubuntu (64-bit)".
Machine Folder (Folder maszyny) – w tym polu możemy wpisać ścieżkę do folderu, w którym chcemy zapisać maszynę.
Type (Typ) – tutaj wybieramy typ naszego systemu operacyjnego. Inaczej mówiąc – rodzinę systemów np. Windows, Linux, macOS. Lecz nie konkretną wersję.
Version (Wersja) – rozwijając listę wybieramy konkretną wersję systemu, który chcemy zainstalować. Jeżeli nie podaliśmy go w nazwie lub VBox źle go wykrył, to należy ręcznie wybrać odpowiedni OS.

Nowa maszyna wirtualna

Gdy już mamy wybrany system klikamy Next

Nazwa i wybór systemu

Następnie po kliknięciu Next, program poprosi nas o przydzielenie odpowiednej ilości pamięci RAM, jaka ma zostać zarezerwowana dla maszyny. Podajemy ją w Megabajtach (MB). Jak widać program sam oznacza nam jaka ilość pamięci jest bezpieczna DLA NASZEGO KOMPUTERA (nie dla wirtualnego systemu).

Określamy ilość RAM-u

Ostatnim krokiem będzie utworzenie wirtualnego dysku, na którym będą przechowywane pliki, a nawet cały system plików naszej maszyny. Do wyboru mamy trzy opcje. Do not add a virtual hard disk, czyli nie dodawaj wirtualnego dysku, zakończy działanie kreatora i utworzy maszynę bez dysku. Takowy będziemy mogli dodać sobie później. Create a virtual hard disk now – stwórz teraz wirtualny dysk – wywoła kreator tworzenia wirtualnego dysku. Ostatnia opcja, czyli Use an existing virtual hard disk file – użyj istniejącego pliku wirtualnego dysku, umożliwia nam wybranie już stworzonego wcześniej pliku z wirtualnym dyskiem.
Wybieramy interesującą nas opcję i zatwierdzamy wybór. W przypadku 1 i 3 opcji należy przejść do punktu III. W przypadku opcji numer 2, należy przejść do punktu II.

II. Tworzenie wirtualnego dysku.

Kreatora tworzenia wirtualnego dysku możemy wywołać na różne sposoby. Albo wybierając drugą opcję przy kreatorze tworzenia VMki, kiedy program pyta się nas o dalsze kroki związane z dyskiem twardym, albo wybierając odpowiednią opcję w ustawieniach maszyny. Oczywiście są też inne metody. Nie zależnie jednak od naszego wyboru, ukaże nam się okno w którym możemy dokonać wyboru, w postaci jakiego typu ma być nasz dysk wirtualny. Widnieją tylko trzy opcje, jednak po kliknięciu na Expert Mode, możemy wybrać dodatkowe trzy formaty.
VDI – VirtualBox Disk Image – jest to domyślny i najlepiej obsługiwany format dysków. Opracowany na potrzeby programu VirtualBox. Posiada on swoje zalety (natywna obsługa), jak i wady (niezgodny z OVA). Przy wykonywaniu kopii zapasowych maszyn, VirtualBox będzie go i tak musiał przekonwertować na VMDK.
VHD – Virtual Hard Disk – niewiele różni się funkcjonalnością od VDI. Jest on tworem firmy Connectix od której Microsoft przejął całą linię produktów dotyczących wirtualizacji. Obecnie to MS rozwija ten format.
VMDK – Virtual Machine Disk – format opracowany przez VMware. Wchodzi w skład większości pakietów OVA i wraz z VHD jest najbardziej wspieranym formatem wirtualnych dysków.
HDD – Parallels Hard Disk – format wykorzystywany i opracowany przez firmę Parallels zajmującą się tworzeniem oprogramowania wirtualizującego na systemu Apple jak macOS.
QCOW – QEMU Copy-On-Write – używany przez program QEMU, używa strategii optymalizacyjnej dysku. Format najrzadziej stosowany. Też mniej stabilny od trzech pierwszych.
QED – QEMU Enhanced Disk – format używany przez QEMU, w przeciwieństwie do QCOW, QED bardziej stawia na stabilność i integralność.

Ustawienia karty nr 1

Oczywiście wybieramy opcję VDI i klikamy Next

Ustawienia karty nr 2

Kolejnym krokiem, będzie wybranie w jaki sposób ma zachowywać się nasz plik dysku twardego. Dostępne są dwie opcje Dynamically allocated (Dynamicznie alokowany) oraz Fixed Size (Stały rozmiar). Pierwsza z nich spowoduje, że plik wirtualnego dysku twardego, będzie się rozszerzał do konkretnej wielkości wraz z ilością i rozmiarem plików zapisanych na nim. Stały rozmiar wygeneruje nam od razu plik wirtualnego dysku, który ma odpowiedni rozmiar. To jaką opcję wybrać będzie zależało od wielu czynników. Jeżeli zależy nam na szybkości działania, albo plik dysku ma mieć niewielki rozmiar to można użyć Fixed size, jednak w większości przypadków należy używać Dynamically allocated, który pozwoli nam na zaoszczędzenie miejsca na dysku. Zaznaczamy go więc i klikamy Next

Wybór obrazu.

Ostatnim krokiem przy tworzeniu wirtualnego dysku będzie zdefiniowanie jego lokalizacji oraz rozmiaru. VirtualBox ma dość niecodzienny suwak do zmiany rozmiaru, gdyż zaczyna się on od 4MB, a kończy na 2TB. Z tego powodu bezpieczniej jest wpisywać konkretne wartości w polu obok. Po zdefiniowaniu wybranych parametrów, można nacisnąć Create, co zakończy kreatora tworzenia nowego wirtualnego dysku i w zależności od miejsca z którego go wywołaliśmy - maszyna się utworzy lub zostanie dodany nowy dysk do maszyny.

III. Ustawienia wirtualnej maszyny.

Program VirtualBox pozwala na dość konkretną edycję i dostosowywanie poszczególnych maszyn wirtualnych. Wywołać ustawienia danej maszyny można poprzez zaznaczenie jej i wybranie opcji Settings lub poprzez kliknięcie PPM na nią i wybranie tej samej opcji. Nie ważne jakiego sposobu użyjemy, ukaże nam się proste okienko podzielone na dwie sekcje. Lewa wyświetla wszelkie dostępne zakładki, zaś prawa wyświetla zawartość tych zakładek.

Ustawienia karty nr 1

Domyślnie otwartą zakładką jest General (Ogólne), która zawiera podstawowe ustawienia naszej maszyny jak nazwa, typ systemu, wersja oraz parę innych dodatkowych zakładek widocznych wyżej

Ustawienia karty nr 2

Następną zakładką jest System, która z kolei dzieli się na trzy sekcje: Motherboard (Płyta główna), Processor (Procesor), Acceleration (Akceleracja). Pierwsza sekcja czyli Motherboard zawiera ustawienia dotyczące naszej jakby "wirtualnej płyty głównej", czyli możemy zmienić pojemność pamięci operacyjnej (Base Memory), zmienić kolejność bootowania konkretnych kontrolerów, a także je wyłączyć (Boot Order). Istnieje również opcja zmiany chipsetu (Chipset), pomiędzy PIIX3, a ICH9 oraz zmiana typu emulowanej myszy: USB Tablet (VBox będzie emulował tablet graficzny na USB), USB Multi-touch Tablet (emulacja wielodotykowego tabletu graficznego) oraz PS/2 Mouse (emulowana będzie stara myszka pod złącze PS/2. Nie będzie to oznaczało, że będzie się zacinała, ale że system będzie ją tak widział). Poniżej możemy aktywować rozszerzone możliwości naszej VMki (Extended Features). Wśród nich można znaleźć włączenie I/O APIC (wymagane do działania 64-bitowych systemów gościa), uaktywnienie EFI czy działanie wewnętrznego zegara zgodnie z UTC.

Wybór obrazu.

Druga sekcja czyli Processor, pozwala na konfigurację naszego "wirtualnego procesora", czyli wybór ilości rdzeni jaką ma używać nasza maszyna [Processor (s)], czy ustawienia czasu jaki ma przeznaczyć nasz fizyczny procesor tzw. Procesor Hosta, na emulowanie wirtualnego procesora (Execution Cap). Dodatkowo możemy uruchomić funkcję PAE/NX, czyli rozszerzenie procesorów 32-bitowych, umożliwiające im dostęp do RAM-u o rozmiarze większym niż 4GB. Można też uruchomić zagnieżdżone VT-x/AMD-V (Nested VT-X/AMD-V), które udostępni technologie VT-x (Intel) oraz AMD-V (AMD), naszemu gościowi, co z kolei pozwoli mu również uruchomić instancję VBoxa. Czyli możemy zwirtualizować system na którym zwirtualizujemy inny system. Bez tej opcji ta możliwość zostanie zablokowana.

Wybór obrazu.

W ostatniej sekcji zatytułowanej Acceleration możemy znaleźć dwie opcje dotyczące interfejsu parawirtualizacji oraz zagnieżdżonego stronicowania (Nested Paging), to ostatnie dotyczy zarządzania pamięcią operacyjną przez VBoxa, lecz ważniejsza jest pierwsza opcja czyli Paravirtualization Interface (Interfejs parawirtualizacji). Jednak zanim to wyjaśnimy, należy wytłumaczyć sobie dwie rzeczy.
Istnieją różne typy wirtualizacji. Spośród nich można wyróżnić pełną wirtualizację oraz parawirtualizację. Ta pierwsza mocno upraszczając, emuluje nasz sprzęt bardzo dokładnie, tak że wirtualny system nie wie czy jest emulowany. Niestety wtedy też system będzie generował tzw. rozkazy przywilejowane, które nie mogą zostać wykonane przez procesor – wirtualny system jest widziany jako aplikacja. Dlatego też hypervisor musi przechwytywać te rozkazy i przekazywać odpowiednie wyniki. Pomagają mu w tym różne technologie implementowane przez producentów procesorów jak VT-x firmy Intel czy AMD-V firmy AMD, które odciążają hipernadzorcę od swojej pracy. Ten typ wirtualizacji wykorzystywany jest właśnie przez VirtualBoxa. Jednakże w przypadku gdy technologie VT-x i AMD-V nie są włączone… program korzysta z parawirtualizacji, która eliminuje wyżej wymienione problemy. Otóż system gościa jest w taki sposób zmodyfikowany aby zamiast rozkazów przywilejowanych, wysyłał specjalne rozkazy do hipernadzorcy tzw. Hypercall. Z tego też powodu system wie, że jest wirtualizowany, lecz umożliwia to komunikację z hipernadzorcą i efektywniejszą emulację. Jednakże, musimy najpierw taki system zmodyfikować.
VBox jednak nawet w przypadku gdy VT-x oraz AMD-V są aktywowane wykorzystuje pewne cechy parawirtualizacji oraz implementuje różne interfejsy (od wersji 5). Z poziomu programu możemy wybrać ich aż 4. Nie liczymy None, który dezaktywuje parawirtualizację oraz Default, który automatycznie wybiera odpowiedni interfejs. Legacy (Stary), jest używany gdy importujemy maszynę z VBox 4 lub niżej. VirtualBox wtedy przy starcie maszyny wybiera odpowiedni interfejs. Minimal (Minimalny) implementuje jedynie parę opcji jak informowanie gościa o wirtualizacji czy przekazywaniu różnych danych, dotyczących zegara procesora. Przydatny przy emulacji systemów z rodziny macOS X. KVM czyli Kernel-based Virtual Machine to interfejs hipernadzorcy wykorzystywany przez systemy operacyjne z rodziny Linux, działające na wersji kernela 2.6.25 i wyższych. Ostatni interfejs parawirtualizacji to Hyper-V firmy Microsoft. Jest on rozpoznawany przez systemy operacyjne z rodziny Windows. Zaczynając od Windows 7 w górę.
Wykorzystanie tego typu interfejsów pozwala zwiększyć wydajność maszyn oraz zastosować wiele ciekawych funkcji jak lepsza emulacja sieci czy karty graficznej. Wymagane są do tego właśnie dodatki gościa. Domyślna opcja jednak jest wystarczająca i zwykle zapewnia w miarę stabilne działanie systemu.

Wybór obrazu.

Następną zakładką jest Display czyli ekran. Zawiera ona wszystkie funkcje związane z działaniem obrazu na naszym wirtualnym systemie. Podzielona jest na trzy sekcje. Pierwsza podpisana jako Screen, zawiera najważniejsze funkcje dotyczące naszej wirtualnej karty graficznej. Video Memory (pamięć wideo) pozwala na zwiększenie wykorzystywanej przez maszynę pamięci VRAM. Zwykle staramy się dać maksymalną ilość, jednak czasem starsze systemy będą wymagać mniejszych parametrów. Monitor Count (liczba monitorów) pozwala na zwiększenie ilości monitorów wykorzystywanych przez maszynę. Maksymalnie można ustawić 8 i tyle też monitorów trzeba mieć fizycznie podłączonych do komputera. Scale Factor (współczynnik skali), służy do skalowania wyświetlanego obrazu – nie do zwiększenia rozdzielczości. Opcja Graphics Controller, czyli kontroler graficzny, umożliwia zmianę kontrolera jaki maszyna będzie wykorzystywać do wyświetlania obrazu.
VBoxVGA – jest domyślnym adapterem wykorzystywanym dawniej w VirtualBoxie 5 i niższych. Używany przy systemach starszych od Windows 7, posiada nie wielkie możliwości emulacyjne 3D, nie wspierany jest też przez systemu Linux, przez co trzeba instalować dodatki gościa oraz wspiera jedynie OpenGL 1.1 na 64-bitowym Windowsie 10 i wszystkich Linuxach. Ten tryb jest domyślnie wybrany w maszynach wirtualnych stworzonych na starszych wersjach VBoxa.
VMSVGA – jest adapterem graficznym wykorzystywanym przez VMware Workstation z akceleracją VMware SVGA 3D. Jest domyślny dla systemów Linuxowych i przede wszystkim jest bardziej bezpieczny. Wszystkie systemu Linux wspierają go ponieważ mają zaimplementowane do niego sterowniki w kernelu. Wspiera też OpenGL 2.1 na wszystkich gościach Windowsowych i Linuxowych. Być może w przyszłych wersjach będzie wspierają systemy z rodziny Windows oparte na systemie MS-DOS. VMware je wspiera jednak VirtualBoxowe dodatki gościa nie.
VBoxSVGA – jest hybrydą pomiędzy VBoxVGA i VMSVGA. Oznacza to, że zawiera nowoczesną akcelerację 3D jak VMSVGA, ale w systemie jest widziany jak VBoxVGA. Domyślnie jest ustawiony dla gości windowsowych. Pozwala również wykorzystać funkcje VirtualBoxowe mimo, że jego podstawą jest VMSVGA.
None – jest opcją, która nie emuluje żadnej karty graficznej. Wybieramy ją kiedy chcemy przekazać do maszyny prawdziwą kartę graficzną (jednak nie tą samą co mamy w systemie. Może być to druga karta) albo kiedy wirtualizowany system nie wymaga karty graficznej.

Wybór obrazu.

Sekcja Remote Display (zdalny pulpit) pozwala na uruchomienie serwera RDP, dzięki któremu możemy łączyć się z maszyną poprzez pulpit zdalny.

Wybór obrazu.

Sekcja Recording (nagrywanie) pozwala zaś na ustawienie nagrywania naszej wirtualnej maszyny. Te dwie ostatnie opcje są najrzadziej wykorzystywane w VirtualBoxie.

Wybór obrazu.

Kolejną zakładką dostępną w ustawieniach jest Storage (pamięć). Pozwala ona na zarządzanie pamięcią stałą w naszym komputerze, a więc – kontrolerami, dyskami, dyskietkami, płytami itd. Podzielona jest ona na trzy pola.
Storage Devices czyli urządzenia pamięci, pozwalające na dodawanie i usuwanie kontrolerów pamięci oraz konkretnych nośników pamięci. Dodać kontroler możemy za pomocą zielonej ikonki z plusem dostępnej na samym dole tego pola. Kliknięcie jej wyświetli listę gdzie będziemy mogli dodać najróżniejsze kontrolery: IDE, SATA, NVMe, SCSI, Floppy i inne o których wam się pewnie nie śniło. Są to rzeczy tak podstawowe, iż nie będę tłumaczył czym jest IDE, SATA itd. Usunąć kontroler można zaznaczając go i wybierając tę samą zieloną ikonkę, tym razem jednak ze znakiem "x". Kiedy mamy już dodany kontroler to możemy podłączyć do niego nośniki pamięci. Aby to zrobić zaznaczamy kontroler i albo wybieramy ikonkę obok niego np. płyty albo dysku, albo wybieramy niebieską ikonkę, która znajduje się tam gdzie zielona. Warto również pamiętać, że kontrolery te emulowane są jak rzeczywiste. To znaczy, że pod NVMe nie podłączymy napędu płyt optycznych. Zaś pod IDE nie dołączymy, kto wie ile dysków czy napędu. Ograniczenie jest do 4 (Primary, Secondary, Master, Slave itd).
Obok znajdują się pola Attributes (atrybuty) oraz Information (informacje). To pierwsze występuje zawsze i informuje nas o ustawieniach kontrolera lub nośnika pamięci. Information zaś pokazuje się jedynie kiedy wybierzemy nośnik pamięci i informuje on nas o jego typie, formacie, rozmiarze itd.
W tym też miejscu możemy wywołać kreator tworzenia nowego dysku. Wystarczy przy dodawaniu dysku do kontrolera zaznaczyć, że chcemy utworzyć nowy.

Wybór obrazu.

Kolejna zakładka Audio (dźwięk) steruje ustawieniami dźwiękowymi naszej maszyny wirtualnej. Jest to jedna z tych uboższych zakładek. Pozwala nam na włączenie wirtualnej karty dźwiękowej (Enable Audio) oraz ustawieniu jej parametrów.
Host Audio Driver (sterownik audio hosta) – pozwala na określenie z jakiego sterownika chcemy skorzystać do emulowania audio. Na Windowsie dostępne jest API Windows DirectSound. Jednak na Linuxie jest już więcej opcji. Nie wpływa to na odtwarzanie dźwięku w maszynie. Ma znaczenie dopiero kiedy pojawią się problemy z dźwiękiem na naszej fizycznej maszynie tj. VMka nie będzie wydawać dźwięków. Wtedy można spróbować zmienić to ustawienie.
Audio Controller (kontroler dźwięku) – pozwala na wybranie kontrolera jaki ma być emulowany przez VBoxa. Jego wybór zależy od systemu operacyjnego i wsparcia dla danego kontrolera. W przeciwieństwie do kontrolera graficznego, ten kontroler jest bazowany na prawdziwym sprzęcie jak chipset AC97 czy SoundBlaster 16.
Extended Features (rozszerzone możliwości) – umożliwia na chwilę obecną włączenie dźwięku (Enable Audio Output) i włączenie mikrofonu (Enable Audio Input). Nie wyłącza przy tym kontrolera dźwiękowego.

Wybór obrazu.

Dalej mamy zakładkę Network (sieć), która steruje emulacją i działaniem sieci w VirtualBoxie. Zauważyć można, że istnieją 4 sekcje odpisane jako "Adapter". Oznacza to, że możemy uaktywnić maksymalnie 4 wirtualne karty sieciowe. Ponieważ te sekcje nie różnią się niczym od siebie to opiszę jedynie zakładkę Adapter 1. Pierwsze co nam program umożliwia to wyłączenie lub włączenie adaptera korzystając z opcji Enable Network Adapter (włącz kartę sieciową).
Opcja Attached to (podłączona do) pozwala nam na określenie trybu działania emulowanej karty. Obecnie mamy aż 8 trybów działania karty.
NAT, czyli Network Address Translation emuluje działanie mechanizmu NAT na naszej wirtualnej karcie siecowej. Oznacza to, że będzie on tłumaczyć adres IP naszej sieci na adres IP wybrany przez VirtualBoxa, przez co gość nie będzie widoczny z poziomu naszej sieci. Tak samo jak komputery w naszej sieci nie są widoczne z poziomu Internetu (widoczny jest nasz router). Widoczny będzie jedynie komputer, na którym VBox jest uruchomiony. Opcja ta nie dzieli Internetu między maszynami. Oznacza to, że dwie maszyny z włączoną tą opcją, nie będą w stanie się zobaczyć. Działa tutaj również mechanizm DHCP, który przydziela adresy automatycznie. Jest to najbezpieczniejsza opcja, jednak też najmniej wygodna. Ze względu na NAT trzeba przekierowywać porty w VirtualBoxie, a także nie można zrezygnować z DHCP, co jest niekorzystne dla serwerów.
Bridged Adapter [mostkowana karta sieciowa (bridged)], emuluje kartę sieciową w taki sposób, że łączy się z naszą siecią po osobnym adresie IP przez co jest widoczna jako drugi komputer z poziomu LAN-u. Omija przy tym stos sieciowy naszego systemu, ponieważ wpina się bezpośrednio do karty. Przydatna opcja wtedy kiedy chcemy uczynić nasz system bezpośrednią częścią sieci, aby przeprowadzać np. symulacje czy uruchamiać serwery. Jest to mniej bezpieczna opcja i niezalecana w przypadku kiedy na maszynie chcemy uruchamiać nieznane oprogramowanie.
Internal Network (sieć wewnętrzna), VirtualBox emuluje wtedy działanie przełącznika, dzięki któremu możemy spiąć ze sobą wiele maszyn wirtualnych. W tym trybie nie ma dostępu do Internetu oraz nie ma dostępu do naszego hosta czyli naszej fizycznej maszyny. Opcja przydatna przy tworzeniu architektury typu "Klient-Serwer". Można ją porównać do sieci LAN, która działa w naszym komputerze.
Host-only Adapter (karta sieci izolowanej), pozwala na komunikację między maszynami wirtualnymi, a także naszym komputerem. Tworzy wirtualną kartę sieciową w naszym systemie hosta, która nie jest związana z fizyczną kartą. Przydatna w momencie, kiedy potrzebujemy komunikacji z naszym komputerem do określonych celów, np. kiedy nasz komputer ma świadczyć jakieś usługi dla wirtualnych maszyn.
Generic driver (rodzajowy sterownik), opcja pozwalająca na stworzenie własnego trybu działania karty sieciowej. Rzadko używana opcja w VirtualBoxie.
NAT Network (sieć NAT), jest to nowa funkcjonalność zaprezentowana w VBox 4.3, która ostatecznie została dopracowana i udostępniona w interfejsie graficznym. Łączy ona cechy opcji NAT oraz Internal Network. Oznacza to, że można utworzyć wirtualną sieć NAT, następnie podłączyć do niej wiele maszyn wirtualnych, dzięki czemu będą one się mogły ze sobą komunikować. Jednakże VirtualBox rezerwuje sobie pierwszy adres z puli jaką określimy na swój cel. A tym celem jest postawienie wirtualnego routera, który stanowi bramę do Internetu. Pierwszy adres z puli można wyliczyć: Adres sieci + 1. Dla przykładu, jeżeli ustawimy sieć 192.168.1.0/24 to adresem wirtualnego routera będzie 192.168.1.1. Jeżeli ustawimy sieć 10.0.0.128/25 to drugim adresem będzie 10.0.0.129. Dodatkowo możemy zdezaktywować serwer DHCP. Funkcje te przydają się nie tyle przy tworzeniu wirtualnej sieci maszyn z dostępem do Internetu, a do stworzenia odseparowanej sieci WAN dla np. serwera. Wykorzystując opcję NAT byliśmy zmuszeni pozostawić aktywnego klienta DHCP na serwerze, a nie każdy serwer z tym współpracuje. Z kolei używając opcji Bridge narażaliśmy naszą sieć na zakłócenia i problemy z działaniem jeżeli źle skonfigurowaliśmy serwer. Dzięki NAT Network możemy ten problem ominąć.
Cloud Network (sieć w chmurze), jest to na chwilę obecną eksperymentalna funkcja wprowadzona przez firmę Oracle, która umożliwia skorzystanie z ich chmury do łączenia maszyn wirtualnych. Pozwala to łączyć w sieć nie tylko VMki na naszym komputerze, ale też na komputerze odległym od nas.
Not Attached (nie podłączona), nie podłącza wirtualnej karty sieciowej do żadnej z wyżej wymienionych opcji. Można to porównać do wyjęcia kabla z karty fizycznej.
Następnie mamy zakładkę Advanced (zaawansowane), która prezentuje dodatkowe funkcje konfiguracyjne naszej karty takie jak rodzaj emulowanego adaptera (Adapter Type), ustawienia trybu nasłuchiwania (Promiscuous Mode), który pozwala na przechwytywanie pakietów niezależnie od adresu MAC wpisanego w ramkę Ethernet czy też na wygenerowanie adresu MAC i ustawienie przekierowywania portów (opcja NAT).

Wybór obrazu.

Kolejna zakładka czyli Serial Ports (porty szeregowe) pozwala na ustawienie do 4 portów COM w naszej wirtualnej maszynie. Wymaga to jednak aby w systemie hosta również były tego typu porty dostępne. Można jednak wykorzystać przejściówki COM-USB. Ustawienia tutaj dostępne to przede wszystkim włączenie portu COM (Enable Serial Port), ustawienie numeru portów (Port Number) czy dodatkowych parametrów jak IRQ, I/O Port oraz tryb działania portu (Port Mode). Zakładka ta może okazać się przydatna kiedy chcemy w naszej wirtualnej maszynie zainstalować port COM po którym będzie komunikowało się jakieś urządzenie z zewnątrz. Przykład może z telekomunikacji. Starsze urządzenia telekomunikacyjne, często posiadają sterowniki 32-bitowe, zaś systemy są obecnie 64-bitowe. Można więc zainstalować takiego Windowsa XP. Udostępnić mu port COM. Podłączyć dane urządzenie i tam zainstalować sterowniki.

Wybór obrazu.

Trzecią od końca zakładką jest USB. Przechowuje ona opcje dotyczące kontrolera USB. Możemy wyłączyć lub włączyć kontroler USB (Enable USB Controller), czy ustawić jego tryb, między OHCI, EHCI, xHCI. Jednakże użycie trybów EHCI i xHCI wymaga aby został doinstalowany Extension Pack. Dodatkowo program daje możliwość ustawiania filtrów czyli wpisów, które będą kontrolować jak ma się zachować dane urządzenie USB na maszynie wirtualnej.

Wybór obrazu.

Przedostatnią zakładką jest Shared Folders (foldery udostępnione). Można tutaj wskazać foldery z naszego fizycznego dysku, które VBox będzie prezentował maszynie wirtualnej jako udziały sieciowe. Dodać taki folder można klikając na ikonkę niebieskiego katalogu z plusikiem, która znajduje się po prawej stronie. Określamy tam takie parametry jak nazwa udziału, ścieżka do folderu, czy chcemy zamontować go na stałe i tym podobne. Do działania folderów udostępnionych wymagana jest instalacja dodatków gościa na systemie zwirtualizowanym.

Wybór obrazu.

Ostatnią zakładką kończącą ten rozdział jest User Interface czyli interfejs użytkownika. Tutaj można skonfigurować jakie elementy mają się pojawiać w interfejsie użytkownika. Chodzi tutaj o górny pasek nawigacyjny i dolny pasek kontrolny.
Pasek nawigacyjny zawiera menu, którym możemy sterować maszyną. Machine zawiera funkcje dotyczące pauzowania, restartowania czy wyłączania maszyny. View zarządza rozdzielczością i samym oknem VirtualBoxa. Input pozwala na wprowadzanie konkretnych kombinacji klawiszy do maszyny (np. Ctrl+Alt+Del) oraz pozwala na wyłączenie/włączenie integracji myszy. Devices steruje, podłączonymi obecnie nośnikami pamięci, a także innymi urządzeniami jak karty sieciowe, USB czy foldery udostępnione.
Pasek kontrolny, który znajduje się na dole przedstawia nam kontrolki, które informują nas o stanie maszyny i jej "komponentów". Możemy się dowiedzieć jak mocno pracuje nasz wirtualny dysk, czy obecnie maszyna czyta płytę i dyskietkę, czy działa audio, czy maszyna ma dostęp do sieci, czy zostały podłączone jakieś udziały udostępnione lub urządzenia USB. Dodatkowo czy działa nagrywanie ekranu, czy maszyna wykorzystuje VT-x/AMD-X, czy działa integracja myszy i czy kursor jest zablokowany wewnątrz maszyny.

IV. Dodatki gościa dla maszyn wirtualnych.

Dodatki gościa są pakietem oprogramowania i sterowników przeznaczonych dla systemów, które wirtualizujemy. W jego skład wchodzą takie elementy jak chociażby sterownik do adaptera graficznego, sterownik do sieci, sterownik do myszki, a także najróżniejsze modyfikacje systemowe, które pozwalają wykorzystywać takie funkcje jak foldery udostępnione. Większość hipernadzorców posiada tego typu pakiety. Jednakże frazy "Dodatki gościa" czy "Guest Additions" lub bardziej dokładnie VirtualBox Guest Additions, nie są czymś co dotyczy każdego oprogramowania wirtualizującego. Co to oznacza? Ano każdy program inaczej nazywa swoje dodatki. VMware ma "Narzędzia VMware" (VMware Tools), Parallels ma swoje "Narzędzia Parallels" (Parallels Tools), VirtualPC od Microsoftu korzysta z "Dodatków maszyn wirtualnych" (VM Additions).
Bardziej specjalistyczne oprogramowanie jak KVM czy Hyper-V stawia na rozwiązania zintegrowane w system. Oznacza to, że dla KVM-u nie musimy instalować na Linuxie żadnych dodatków, a dla Hyper-V nie musimy instalować żadnych dodatków na Windowsie.
Dodatki gościa w VirtualBoxie są opcjonalne, jednak ich instalacja pozwoli na wykorzystanie wszystkich funkcji programu takich jak: przyśpieszenie grafiki 3D, foldery udostępnione, wspólny schowek, drag & drop, dynamiczna zmiana rozdzielczości czy lepsza integracja kursowa (nie zauważamy kiedy nas wskaźnik jest w maszynie, a kiedy na komputerze).
Warto wspomnieć, że nie wszystkie systemy operacyjne obsługują dodatki gościa. Wsparcie dla poszczególnych systemów można znaleźć na stronie VirtualBoxa. Na pewno nie zainstalujemy ich na systemach Windows opartych na MS-DOS.

Ustawienia karty nr 1

Aby zainstalować dodatki gościa należy po uruchomieniu maszyny wybrać z menu nawigacyjnego opcję Devices – Insert Guest Additions CD Image, a następnie zainstalować je korzystając z instalatora, który zamontuje się w maszynie w postaci płyty CD.