VirtualBox

Z Fedora Wiki
Skocz do: nawigacji, wyszukiwania

Spis treści


Instalujemy źródła kernela i pakiety potrzebne do kompilacji sterownika

yum install make automake autoconf gcc kernel-devel dkms

teraz wybieramy pomiędzy wersją VirtualBox (komercyjną) lub VirtualBox-OSE (Open Source Edition)

VirtualBox

Warn.png
UWAGA! Instrukcja dotyczy wersji pakowanej przez Oracle
Nie jest to ta sama wersja, którą możemy ściągnąć ze standardowych repozytoriów dostarczanych z dystrybucją Fedora.
VirtualBox z repozytoriów Fedory nie ma wsparcia dla USB w maszynach wirtualnych oraz nie obsługuje protokołu RDP.


Pobieramy plik z konfiguracją repozytorium:

 

Repozytorium jest domyślnie wyłączone. Żeby je właczyć należy wykonać polecenie:

"sed -i -e 's/enabled=0/enabled=1/' /etc/yum.repos.d/vbox.repo"

Następnie instalujemy VirtualBox:

"yum install VirtualBox-4.1"



W celu włączenia obsługi wirtualnych systemów 64-bitowych należy po utworzeniu nowej maszyny wirtualnej wejść w jej "Ustawienia" (Ctrl-S) i na zakładce "Ogólne"→"Zaawansowane" zaznaczamy opcje "Extended features": "Włącz ACPI", "Włącz IO APIC", "Enable VT-x/AMD-V", "Włącz PAE/NX".

Dodaj siebie do grupy vboxusers

"usermod -G vboxusers -a `whoami`"

Uwagi:

  • instalacja paczki dkms zapewnia automatyczną aktualizację sterownika (nie tylko VirtualBox) dla nowego jądra. Jeśli jej nie zainstalujemy, to po każdej aktualizacji jądra należy wykonać jako root komendę:
"/etc/init.d/vboxdrv setup"
  • VirtualBox potrafi uruchamiać systemy z obrazów VMWare → instrukcja. Link do obrazów na końcu sekcji VMWare Player.
  • Jeśli wystąpi brak możliwości podłączenia urządzenia USB z menu maszyny wirtualnej "Urządzenia" > "Urządzenia USB" (widać urządzenie, ale nie jest dostępne) należy jako root wykonać polecenia:
":" -f3`
# lub tak:
# MYGID=`awk -F ":" '/^vboxusers/ {print $3}' /etc/group`
"none /sys/bus/usb/drivers usbfs devgid=$MYGID,devmode=664 0 0"

Polecenia należy wykonać tylko raz. Przy kolejnych uruchomieniach systemu nie powinno być już problemów.
Rozwiązanie zaczerpnięte z bloga Penguin Enclave

Instalacja pakietu rozszerzeń
Od wersji 4.0 firma Oracle wydzieliła z paczki binarnej VirtualBox pakiety rozszerzeń. Z tego powodu z paczki binarnej została usunięta m.in. obsługa USB. Aby w pełni korzystać z obsługi USB w maszynie wirtualnej należy zainstalować pakiet rozszerzeń. Pakiet pobieramy ze strony http://www.virtualbox.org/wiki/Downloads (druga "kropka" opisana jako VirtualBox [tu numer wersji] Oracle VM VirtualBox Extension Pack). Instalację rozszerzenia przeprowadzamy jako root

cd <ścieżka z zachowanym pakietem *.vbox-extpack>
VBoxManage extpack install Oracle[wciśnij TAB][wciśnij ENTER]

lub jeśli dokonaliśmy aktualizacji wcześniej zainstalowanej wersji:

cd <ścieżka z zachowanym pakietem *.vbox-extpack>
VBoxManage extpack install --replace Oracle[wciśnij TAB][wciśnij ENTER]

Po restarcie urządzenia USB zamontowane na systemie-gospodarzu powinny byc dostępne do zainstalowania w systemie goszczonym.

Automatyczna aktualizacja pakietu rozszerzeń
Niestety po aktualizacji VirtualBox, konieczna jest ponowna instalacja pakietu rozszerzeń w wersji odpowiadającej zaktualizowanemu pakietowi. Aby instalacja ta została wykonana automatycznie po aktualizacji, należy zainstalować wget oraz plugin yum-a:

 

oraz dodać plik akcji dla pakietu VirtualBox, który pobiera pakiet rozszerzeń i instaluje go podczas aktualizacji:

'# On VirtualBox update, download and install VirtualBox Extension Pack
VirtualBox-[0-9].[0-9]:update:version="$ver" && v=(${version//_/ }) '\
'&& ext="Oracle_VM_VirtualBox_Extension_Pack-${v[0]}-${v[1]}.vbox-extpack" '\
'&& wget -q "download.virtualbox.org/virtualbox/${v[0]}/$ext" -P /tmp '\
'&& VBoxManage extpack install "/tmp/$ext"; rm -f "/tmp/$ext"'

Kontrola virtualnego systemu z linii komend

Ciekawą i mniej znaną cechą VB jest możliwość kontrolowania wirtualnego systemu z pominięciem graficznego interfejsu VirtualBox. Aby uruchomić obraz, wystarczy wywołać polecenie:

 

Przykładowo u mnie obraz nazywa się WinXP i w łatwy sposób można utworzyć wykonywalny skrypt:

"echo -e '#!/bin/bash \nVBoxManage startvm WinXP' >> /usr/local/bin/WinXP""chmod +x /usr/local/bin/WinXP"

Teraz można uruchomić maszynę [Alt]+[F2] i wpisać WinXP lub utworzyć aktywator do polecenia /usr/local/bin/WinXP. Jeśli chcemy mieć więcej możliwości kontroli, możemy rozbudować skrypt o kilka opcji:

#!/bin/bash
# xp - kontrola wirtualnego xp
 
# nazwa wirtualnego systemu
# -eq 0 ]; then
	# przy braku parametrów: wyświetl pomoc
"${0##*/} { on | off | save }""$1""Nie ma takiego parametru:     $@"
			# uruchomienie bez parametrów wyświetli pomoc
 

Możliwości kontroli są znacznie większe, a pełna dokumentacja dostępna jest tu:

rpm -qd VirtualBox-4.1

Uruchomienie systemu z dysku jako maszyny wirtualnej

Jeśli na innym dysku/partycji mamy zainstalowany drugi system, to możemy uruchomić go w okienku jak inne maszyny wirtualne. Należy w tym celu utworzyć specjalny obraz VMDK, który definiuje, gdzie są składowane dane, a później można go używać jak zwykłego obrazu wirtualnego dysku.

Warn.png
Ostrożnie! Tylko dla zaawansowanych
Niewłaściwe użycie lub użycie nieaktualnego obrazu VMDK może prowadzić do całkowitej utraty danych na dysku. Pamiętaj, że chodzi o dostęp do sprzętu z dwóch systemów, które z pewnością będą chciały nim zarządzać. Nigdy nie uruchamiaj hosta jako wirtualnego systemu (ten sam system działający równolegle). Trudno też przewidzieć co będzie jeśli spróbujemy uzyskać bezpośredni dostęp do partycji z dwóch różnych systemów jednocześnie. Przykładowo na partycji NTFS mogą się nie zapisywać pliki pod Fedorą jeśli będzie ona pod jednoczesną kontrolą wirtualnego Windowsa. Nawet po zamknięciu wirtualnego Windowsa, partycje mogą wymagać ponownego zamontowania.

Dodaj siebie do grupy disk

su -c "usermod -G disk -a `whoami`"

Rejestrujemy bootowalny dysk (nie partycję!). Jeśli jest to drugi dysk, wówczas mówimy o /dev/sdb a wynikiem będzie plik winxp.vmdk.

VBoxManage internalcommands createrawvmdk -filename /path/to/winxp.vmdk -rawdisk /dev/sdb -register

To samo pod Windows dla dysku /dev/sda, gdzie znajduje się Fedora:

VBoxManage internalcommands createrawvmdk -filename C:\fedora.vmdk -rawdisk \\.\PhysicalDrive0 -register

To prawie wszystko, dyski są widoczne w Plik > Menadżer nośników wirtualnych. Wystarczy dodać nową maszynę i wybrać wygenerowany dysk.

Uwaga! W przypadku Windows, należy utworzyć nowy profil sprzętowy inaczej będzie ciągle instalował nowe urządzenia raz wirtualne, raz rzeczywiste. Opcja dostępna jest w: Control Panel --> System --> Hardware --> Hardware Profiles

Wszelkie dodatkowe informacje dostępne są w UserManual.pdf, rozdział "Advanced topics">"Using a raw host hard disk from a guest"

Osobiste
Przestrzenie nazw

Warianty
Działania
Wiki
Nawigacja
Inne
Narzędzia