9VirtualBox
Virtualisierung macht es möglich, auf einem Rechner mehrere Betriebssysteme parallel auszuführen. Daraus ergeben sich unzählige Anwendungen: Sie können Linux unter Windows ausprobieren oder Windows unter Linux ausführen, eine neue Alpha-Version der Distribution xyz gefahrlos testen, ohne die vorhandene Linux-Installation zu gefährden, Server-Funktionen sicher voneinander trennen etc.
Das für die Plattformen Windows, Linux und OS X verfügbare Programm VirtualBox eignet sich am besten zur Desktop-Virtualisierung, also zur Ausführung von virtuellen Maschinen, die im Grafiksystem bedient werden sollen. Hinter VirtualBox stand ursprünglich die Firma InnoTek. 2008 übernahm Sun InnoTek, und 2010 kaufte Oracle Sun. Damit ist nun Oracle der Eigentümer von VirtualBox. Umfassende Dokumentation zu VirtualBox finden Sie unter:
Große Teile von VirtualBox bestehen aus Open-Source-Code. Die einzige Ausnahme sind einige Zusatzfunktionen, die extra installiert werden müssen. Ihre Nutzung ist für Privatanwender ebenfalls kostenlos.
Dieses Kapitel beschreibt, wie Sie VirtualBox unter Linux installieren und darin virtuelle Maschinen ausführen. Mit Einschränkungen ist VirtualBox auch zur Server-Virtualisierung geeignet. Wesentlich besser für diese Zwecke ist aber das Programm KVM, das ich Ihnen in Kapitel 41 näher vorstelle.
9.1VirtualBox auf einem Linux-Host installieren
Zur Installation von VirtualBox gibt es grundsätzlich zwei Möglichkeiten. Die bequeme Variante besteht darin, einfach die VirtualBox-Pakete zu verwenden, die sich in den Paketquellen Ihrer Distribution befinden. Sollten diese Pakete fehlen oder nicht ausreichend aktuell sein, können Sie VirtualBox selbst von der Webseite https://www.virtualbox.org herunterladen und manuell installieren. Das ist ein wenig umständlicher.
In diesem Abschnitt gehe ich auf beide Varianten ein. Losgelöst davon sind nach Abschluss der Installation noch einige Vorbereitungsarbeiten zu erledigen, die ich am Ende dieses Abschnitts erläutere.
Host und Gast
Bei der Beschreibung von Virtualisierungssystemen hat es sich eingebürgert, das Grundsystem als Wirt (Host) und die darauf laufenden virtuellen Maschinen als Gäste (Guests) zu bezeichnen. In diesem Kapitel gehe ich davon aus, dass der Host ein bereits funktionierendes Linux-System ist.
VirtualBox-Pakete Ihrer Distribution
Die meisten Distributionen bieten fertige VirtualBox-Pakete an. Bei Fedora müssen Sie allerdings vorher die rpmfusion-Paketquelle aktivieren. Bei openSUSE befinden sich die Kernfunktionen und die Benutzeroberfläche in getrennten Paketen, deswegen müssen Sie auch das Paket virtualbox-qt installieren.
Nicht erforderlich sind hingegen die diversen virtualbox-guest-Pakete! Diese Pakete enthalten Treiber, die in virtuellen Maschinen auszuführen sind, also in den Gästen.
VirtualBox greift auf dem Wirtssystem auf die vier Kernelmodule vboxdrv, vboxpci, vboxnetadp und vboxnetflt zurück. Manche Distributionen stellen diese Module in binärer Form durch ein eigenes Paket zur Verfügung, das bei jedem Kernel-Update aktualisiert wird. Bei Fedora lautet der Paketname kmod-VirtualBox, bei openSUSE virtualbox-host-kmp-desktop.
Fehlt ein derartiges Paket, wird nur der Quellcode der VirtualBox-Pakete installiert. Vor der ersten Verwendung von VirtualBox sowie nach jedem Kernel-Update auf dem Host müssen Sie nun die VirtualBox-Module mit dem folgenden Kommando neu kompilieren:
Bei einigen Distributionen mit Systemd als Init-System müssen Sie stattdessen dieses Kommando ausführen:
Der Quellcode für die Kernelmodule wird zusammen mit VirtualBox installiert. Zum Kompilieren sind aber auch der C-Compiler gcc sowie die Kernel-Header-Dateien erforderlich. Bei Ubuntu sind diese Voraussetzungen standardmäßig erfüllt, bei anderen Distributionen müssen Sie die entsprechenden Pakete installieren (siehe Abschnitt 26.3, »Kernelmodule selbst kompilieren«).
Ob das Kompilieren und Laden der VirtualBox-Kernelmodule funktioniert hat, prüfen Sie mit dem folgenden Kommando:
Bei manchen Distributionen kümmert sich der Dynamic Kernel Module Support (DKMS) darum, die Virtualbox-Kernelmodule immer auf dem laufenden Stand zu halten. Dies ist z.B. bei Ubuntu der Fall, wo Sie das Paket virtualbox-dkms installieren.
VirtualBox-Pakete von Oracle
Statt der mit Ihrer Distribution mitgelieferten VirtualBox-Pakete können Sie auch die von Oracle zum Download angebotene Version installieren. Das ist vor allem dann zweckmäßig, wenn Oracle eine neuere VirtualBox-Version anbietet als Ihre Distribution.
http://www.virtualbox.org/wiki/Linux_Downloads
Auf der obigen Website finden Sie VirtualBox in verschiedenen Formaten: als RPM- und Debian-Paket für diverse Distributionen sowie als Universal-Installer, den Sie wie folgt starten:
Um das Kompilieren der Kernelmodule müssen Sie sich selbst kümmern:
Nach Möglichkeit sollten Sie vor VirtualBox das dkms-Paket Ihrer Distribution installieren. In diesem Fall verwaltet DKMS die VirtualBox-Kernelmodule und kümmert sich bei Kernel-Updates automatisch um eine Neukompilierung. Bei meinen VirtualBox-Installationen hat das allerdings nicht immer zuverlässig funktioniert.
Für Debian- und Ubuntu-Anwender gibt es eine eigene APT-Paketquelle, die automatische Updates innerhalb der gewählten Major-Version sicherstellt. Dazu fügen Sie zu /etc/apt/sources.list eine der folgenden Zeilen hinzu:
Anstelle von jessie bzw. vivid müssen Sie den Codenamen der von Ihnen eingesetzten Debian- bzw. Ubuntu-Distribution verwenden (siehe /etc/os-release).
Außerdem führen Sie diese beiden Kommandos aus, um den Schlüssel der Paketquelle zu installieren:
Anschließend installieren Sie VirtualBox mit apt-get oder aptitude:
Für Anwender von Yum-kompatiblen Distributionen (CentOS, Fedora, openSUSE, Red Hat etc.) gibt es analog eine Yum-Paketquelle. Auch in diesem Fall müssen Sie zuerst den Schlüssel importieren:
Anschließend laden Sie die entsprechende *.repo-Datei von der VirtualBox-Download-Seite herunter und kopieren sie in das Verzeichnis /etc/yum.repos.d:
Die VirtualBox-Installation führen Sie nun mit dnf install oder yum install oder zypper install durch.
Installation unter Windows und OS X
Noch einfacher ist die VirtualBox-Installation unter den aktuellen Versionen von Windows und OS X: Sie laden die gerade aktuelle Binärversion von https://virtualbox.org herunter, führen das Installationsprogramm aus und starten Windows neu – fertig!
Vorbereitungsarbeiten
Unabhängig davon, aus welcher Quelle Ihre VirtualBox-Installation stammt, wurde die Gruppe vboxusers eingerichtet. Nur Benutzer, die dieser Gruppe angehören, können virtuelle Maschinen ohne Einschränkungen ausführen. Deswegen müssen Sie vor dem ersten Start von VirtualBox Ihren Account der Gruppe vboxusers hinzufügen. Ersetzen Sie beim folgenden Kommando kofler durch Ihren Login-Namen:
Damit die geänderte Gruppenzuordnung wirksam wird, müssen Sie sich aus- und neu einloggen. Anschließend starten Sie die Benutzeroberfläche von VirtualBox über das KDE- oder Gnome-Menü bzw. mit dem Kommando VirtualBox.
VirtualBox richtet für jede virtuelle Maschine ein Unterverzeichnis innerhalb von VirtualBox VMs ein. In mehreren Dateien werden dort die Einstellungen der virtuellen Maschine sowie die virtuelle Festplatte gespeichert. Mit Datei • Globale Einstellungen können Sie gegebenenfalls einen anderen Speicherort einstellen.
Oracle bietet auf seiner Website ein sogenanntes Extension Pack zum Download an. Beim Download des Extension Packs schlägt der Webbrowser vor, die Datei direkt mit VirtualBox zu öffnen. Diesem Vorschlag folgen Sie einfach.
Das Extension Pack ergänzt VirtualBox um einige Zusatzfunktionen: Unter anderem können Sie dann in den virtuellen Maschinen auf USB-Geräte (USB-2 und USB-3), PCI-Karten und Webcams zugreifen und die virtuellen Maschinen via RDP (Remote Display Protocol) auf einem anderen Rechner im Netzwerk steuern. Diese Erweiterungen werden nur in Binärform vertrieben, es handelt sich also nicht um Open-Source-Code. Die kommerzielle Nutzung dieser Erweiterungen erfordert eine Lizenz von Oracle!