Tato příručka vysvětluje, jak můžete spouštět virtuální počítače s VirtualBox 5.1 na bezhlavém serveru Ubuntu 16.04. Normálně ke správě virtuálních strojů používáte grafické uživatelské rozhraní VirtualBox, ale server nemá desktopové prostředí. Naštěstí VirtualBox přichází s nástrojem zvaným VBoxHeadless, který vám umožňuje připojit se k virtuálním strojům přes připojení ke vzdálené ploše, takže není potřeba grafické uživatelské rozhraní VirtualBox.
1 předběžná poznámka
Testoval jsem to na serveru Ubuntu 16.04 (hostitelský systém) s IP adresou 192.168.1.100, kde jsem přihlášen jako normální uživatel (v tomto příkladu administrátor uživatelského jména) místo jako root.
2 Instalace VirtualBox
Chcete-li nainstalovat VirtualBox 5.1 na náš server Ubuntu 16.04, otevřeme /etc/apt/sources.list...
sudo nano /etc/apt/sources.list
... a přidejte k němu následující řádek:
deb http://download.virtualbox.org/virtualbox/debian xenial contrib
Poté stáhneme veřejný klíč VirtualBox...
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
... a aktualizujte naši databázi balíčků:
sudo apt-get update
Poté nainstalujeme VirtualBox 5.1 následovně:
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-5.1 dkms
(Balík dkms zajišťuje, že moduly hostitelského jádra VirtualBoxu budou správně aktualizovány, pokud se změní verze jádra Linuxu.)
Počínaje verzí 4.0 zavedl VirtualBox takzvané „rozšiřující balíčky“ a do těchto rozšiřujících balíčků outsourcoval některé funkce, jako je podpora připojení ke vzdálené ploše (VRDP), která byla součástí balíčků VirtualBox před verzí 4.0. Protože k ovládání našich virtuálních strojů potřebujeme připojení ke vzdálené ploše, musíme nyní nainstalovat příslušný rozšiřující balíček. Přejděte na http://www.virtualbox.org/wiki/Downloads a najdete odkaz na následující balíček rozšíření:
VirtualBox 5.1 Oracle VM VirtualBox Extension Pack
Stáhněte a nainstalujte balíček rozšíření následovně:
cd /tmp
wget http://download.virtualbox.org/virtualbox/5.1.0/Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack
(Ujistěte se, že jste si stáhli nejnovější verzi z webu VirtualBox a použili sudo k instalaci souboru extpack pomocí VBoxManage.)
Nyní musíme přidat uživatele, který bude spouštět VirtualBox (v tomto příkladu správce), do skupiny vboxusers:
sudo adduser administrator vboxusers
VirtualBox je nyní nainstalován a připraven k použití.
3 Použití VirtualBoxu na příkazovém řádku
3.1 Vytvoření virtuálního počítače
K vytvoření virtuálního počítače na příkazovém řádku můžeme použít příkaz VBoxManage. Viz
VBoxManage --help
pro seznam dostupných přepínačů a (vřele doporučujeme!) se podívejte na http://www.virtualbox.org/manual/ch08.html.
Nyní vytvořím virtuální počítač serveru Ubuntu 16.04 s 2048 MB paměti a 10 GB pevným diskem z obrazu iso serveru Ubuntu 16.04 (který jsem uložil v /home/administrator/iso/ubuntu-16.04-server-amd64.iso):
VBoxManage createvm --name "Ubuntu 16.04 Server" --register
VBoxManage modifyvm "Ubuntu 16.04 Server" --memory 2048 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 ens33
VBoxManage createhd --filename /home/administrator/Ubuntu_16_04_Server.vdi --size 10000
VBoxManage storagectl "Ubuntu 16.04 Server" --name "IDE Controller" --add ide
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/administrator/Ubuntu_16_04_Server.vdi
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/administrator/iso/ubuntu-16.04-server-amd64.iso
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on
Nyní pokračujte kapitolou 3.3, spusťte virtuální počítač a poté se připojte k virtuálnímu počítači pomocí klienta vzdálené plochy, jak je popsáno v kapitole 4.
3.2 Import existujícího virtuálního počítače
Předpokládejme, že máte virtuální počítač s názvem examplevm, který chcete znovu použít na tomto hostiteli. Na starém hostiteli byste měli mít adresář Machines/examplevm v adresáři VirtualBox; Počítače/examplevm by měly obsahovat soubor examplevm.xml. Zkopírujte adresář examplevm (včetně souboru examplevm.xml) do svého nového adresáře Machines (pokud je vaše uživatelské jméno správce, toto je /home/administrator/.VirtualBox/Machines – výsledek by měl být /home/administrator/.VirtualBox/Machines /examplevm/examplevm.xml).
Kromě toho zkopírujte soubor examplevm.vdi ze starého adresáře VDI do nového (např. /home/administrator/.VirtualBox/VDI/examplevm.vdi).
Poté musíte importovaný virtuální počítač zaregistrovat:
VBoxManage registervm Machines/examplevm/examplevm.xml
3.3 Spuštění virtuálního počítače s VBoxHeadless
Bez ohledu na to, zda vytvoříte nový virtuální počítač nebo importujete starý, můžete jej spustit příkazem:
VBoxHeadless --startvm "Ubuntu 16.04 Server"
(Nahraďte server Ubuntu 16.04 názvem svého virtuálního počítače.)
VBoxHeadless spustí VM a server VRDP (VirtualBox Remote Desktop Protocol), který vám umožní vidět výstup VM vzdáleně na jiném počítači.
Chcete-li zastavit virtuální počítač, spusťte
VBoxManage controlvm "Ubuntu 16.04 Server" poweroff
Chcete-li pozastavit virtuální počítač, spusťte
VBoxManage controlvm "Ubuntu 16.04 Server" pause
Chcete-li resetovat virtuální počítač, spusťte
VBoxManage controlvm "Ubuntu 16.04 Server" reset
Chcete-li se dozvědět více o VBoxHeadless, podívejte se na
VBoxHeadless --help
a na http://www.virtualbox.org/manual/ch07.html#vboxheadless.
4 Připojení k virtuálnímu počítači ze vzdálené plochy
4.1 Windows
K připojení k virtuálnímu počítači můžete použít vestavěný nástroj Připojení ke vzdálené ploše.
Zadejte název hostitele nebo IP adresu hostitele (nikoli hosta!):
A voilà, měli byste být připojeni k VM:
4.2 Ubuntu Desktop
Na počítačích Ubuntu můžete k připojení k virtuálnímu počítači použít klienta vzdálené plochy Remmina nebo gnome-rdp.
Nainstalujte klienta pomocí apt:
sudo apt-get install remmina remmina-plugin-rdp
Stačí vyhledat remmina a poté dvakrát kliknout na ikonu Remmina Client pro spuštění aplikace RDP.
V klientovi vzdálené plochy Remmina klikněte na ikonu plus a přidejte nové připojení ke vzdálené ploše:
V okně Předvolby vzdálené plochy vyplňte název profilu (jako Ubuntu 16.04 Server), ujistěte se, že je jako protokol vybrán RDP (ve výchozím nastavení by měl být vybrán), poté vyplňte IP adresu hostitele – nikoli IP hosta VirtualBoxu! - v poli Server a vyberte vyšší barevnou hloubku, než je výchozí hodnota 8bpp - 16bpp je v pořádku. Poté klikněte na Připojit:
A voilà, měli byste být připojeni k VM:
4.3 Pokud připojení ke vzdálené ploše nefunguje...
Pokud připojení ke vzdálené ploše nefunguje, pravděpodobně jste přehlédli krok, kdy jsem v kapitole 2 nainstaloval balíček rozšíření VirtualBox. Nainstalujte si prosím balíček rozšíření nyní, zastavte svůj virtuální stroj (viz kapitola 3.3) a upravte svůj virtuální stroj přijímat připojení ke vzdálené ploše:
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on
(Pokud je balíček rozšíření již nainstalován při vytváření virtuálního počítače, připojení ke vzdálené ploše se automaticky povolí.)
Poté znovu spusťte svůj virtuální počítač.
5 odkazů
- VirtualBox:http://www.virtualbox.org/
- Ubuntu:http://www.ubuntu.com/