VirtualBox | heise online

VirtualBox

Konkurrenz für Vmware und Co.: Mit VirtualBox betritt ein neuer Virtualisierer die Bühne. Die Open-Source-Software führt Windows einschließlich Vista, Linux, OS/2 und diverse Unix-Varianten mit ordentlichem Tempo unter Windows oder Linux aus.

vorlesen Druckansicht
Lesezeit: 9 Min.
Inhaltsverzeichnis

Ein neuer Player im Virtualisierungmarkt? Nicht ganz: Hersteller InnoTek entwickelte zusammen mit Connectix bereits den VirtualPC. Nachdem Microsoft 2003 Connectix kaufte, arbeitete das deutsche Unternehmen weiter am Linux-Support in VirtualPC und VirtualServer – und entwickelt seit 2004 VirtualBox für besondere Einsatzzwecke im Bereich Sicherheit und Desktop-Virtualisierung. Die Software wird beispielsweise bei Behörden eingesetzt, war aber nie für Endanwender erhältlich.

Das hat sich jetzt geändert: Die aktuelle Version 1.3.2 ist ab sofort unter der GPL frei verfügbar. Eine Unternehmensvariante mit einigen zusätzlichen Features und – auf Wunsch – Support und speziellen Anpassungen ist unter einer proprietären Lizenz erhältlich. Quellen und fertige Installationspakete für 32-bittige Windows- und Linux-Hosts stehen ab sofort zum Download bereit.

VirtualBox emuliert ähnlich wie Vmware und Qemu einen kompletten PC, in dem sich nahezu jedes PC-Betriebssystem installieren lässt. Die Gastsysteme in den virtuellen Maschinen finden emulierte Hardware vor: den Intel-Chipsatz 440FX (Natoma), die Netzwerkkarte AMD 79C973 (PCnet II), Intel-AC97-Sound und eine Standard-VGA-Karte. Der Prozessor wird wie bei Vmware im Original durchgereicht.

Innotek empfiehlt Windows 2000, XP und Server 2003 oder eine halbwegs aktuelle 32-bittige Linux-Distribution als Host; Versionen für 64-Bit-Hostsysteme und Mac OS X sind in Arbeit. Als Gastsysteme werden offiziell Windows NT 4, 2000, XP, Server 2003 und Vista, OS/2 Warp, Linux mit Kernel 2.4 und 2.6 sowie OpenBSD unterstützt. Auch MS-DOS und und die auf DOS basierenden älteren Windows-Versionen, Linux 2.2, Netware, Solaris/x86 sowie Free- und NetBSD laufen als Gäste, sind aber nur wenig getestet.

VirtualBox: per GUI oder Kommandozeile bedienbar

Wir haben eine Vorabversion von VirtualBox 1.3.2 unter Ubuntu 6.10 auf einem (nicht mehr ganz neuen) Pentium-4-Rechner mit 2 GHz und 1024 MByte RAM getestet.

Bei der Installation des Debian-Pakets wird ein Kernel-Modul vboxdrv übersetzt, man benötigt daher Compiler und Kernelquellen. Ein Init-Skript lädt das Kernel-Modul später bei jedem Systemstart. Benutzer, die VirtualBox nutzen, müssen in die bei der Installation angelegte Gruppe vboxusers eingetragen werden. Die Programmbestandsteile und ein Handbuch im PDF-Format landen in /opt/VirtualBox-1.3.2.

Mit dem Befehl

VirtualBox

lässt sich das grafische Frontend starten. Wer VirtualPC oder Vmware Workstation kennt, wird damit auf Anhieb zurechtkommen.

VirtualBox lässt sich aber auch komplett über die Kommandozeile steuern: Das Tool VBoxManage bietet alle Möglichkeiten des GUI – und noch einige Funktionen mehr: So lassen sich damit Verzeichnisse auf dem Host für den Zugriff aus den virtuellen Maschinen (VMs) heraus freigeben. Mit dem GUI ist das noch nicht möglich; in kommenden Versionen will Innotek jedoch alle Optionen über das GUI zugänglich machen. Auf ohne GUI gestartete VMs lässt sich über den in VirtualBox integrierten RDP-Server zugreifen – ideal, um auf einem Server mehrere Desktops in VMs laufen zu lassen und via Netz zur Verfügung zu stellen.

Über einen Wizard lassen sich bequem neue virtuelle Maschinen anlegen. Ein Festplattenmanager verwaltet die Image-Dateien für die virtuellen Festplatten. Als CD-/DVD-Laufwerk kann man ein reales Gerät des Hosts durchreichen oder ein ISO-Image einbinden.

Beim Netzwerk bietet VirtualBox zwei Optionen: Mit "Host Interface" übernimmt eine Bridge zum Netzwerkadapter des Hosts die Netzwerkanbindung; unter Linux als Host richtet VirtualBox die Bridge auf Wunsch automatisch ein. Das wollte im Test aber nicht immer funktionieren – auf Nummer sicher geht, wer die Bridge auf dem Host von Hand einrichtet. Eine Anleitung dazu findet sich im Manual.

VirtualBox verwendet die Standard-Bridging-Funktionen von Linux, um den direkten Zugriff der Gastsysteme ins Netz umzusetzen. VirtualBox-Benutzer benötigen daher Lese- und Schreibzugriff auf /dev/net/tun.

Alternativ kann man das Netz via NAT (Network Address Transation) verbinden. Ein DHCP-Server in VirtualBox vergibt IP-Adresse aus dem Range 10.0.2.0/24, spezielle Einstellungen auf dem Host sind nicht nötig. Die Anbindung per NAT eignet sich nur für Gastsysteme, die keine Serverfunktionen bereitstellen.

Was VirtualBox fehlt, sind fortgeschrittene Funktionen zur Serverkonsolidierung, etwa das dynamische Zuweisen von Systemressourcen, das Verschieben laufender VMs von einem Rechner auf einen anderen oder das leichte Umwandeln realer Server in virtuelle Maschinen.

Teil 2: Linux und Vista als Gast, Performance, Fazit

Die Installation von Opensuse 10.2 in VirtualBox lief glatt, bis der Suse-Installer Yast versuchte, ISDN-Karten im Rechner zu erkennen: Da bootete die VM neu. Das war allerdings auch die einzige Schwäche, die sich der Virtualisierer gab; ansonsten lief VirtualBox im Test stabil.

X11 startete mit dem Framebuffer-Treiber und einer Auflösung von 800x600 Pixeln bei 16 Bit Farbtiefe. Wer mehr will, muss die Guest Additions installieren. Da dabei zwei Kernelmodule (vboxadd sowie vboxvfs zum Zugriff auf das Dateisystem des Hosts) übersetzt werden müssen, sind die Kernelquellen und der gcc im Gastsystem erforderlich.

Die Guest Additions richten einen eigenen Grafiktreiber ein, der Auflösungen bis zu 1600x1200 Pixel erlaubt. Zudem ist es damit möglich, die Maus einfach aus dem Virtualbox-Fenster mit der VM herauszuziehen; ohne Guest Additions "fängt" das Gastsystem die Maus und gibt sie erst nach Druck der rechten Strg-Taste wieder frei. Außerdem sorgen die VirtualBox-Erweiterungen des Gastsystems für eine exakte Synchronisation der Zeit zwischen Host und Gast und erlauben das Einbinden von Verzeichnissen, die mit VBoxManage auf dem Host freigegeben wurden. Dazu genügt im Gast ein simples

mount -t vboxsf FREIGABENAME MOUNT-POINT

Opensuse 10.2 lief – abgesehen von dem ISDN-Modul in Yast, das auch im installierten System bei der Hardwareerkennung abstürzte, ohne jedoch die VM zu beeinträchtigen – stabil und in benutzbarem Tempo. Lediglich umfangreichere Festplattenzugriffe wirkten gelegentlich etwas zäh.

VirtualBox bietet eine Snapshot-Funktion, mit der sich der aktuelle Installationsstand sichern lässt. Im Test gelangen sowohl das Anlegen von Snapshots als auch die Rückkehr zu früheren Systemzuständen.

Zwei Merkwürdigkeiten, die wir unter Ubuntu 6.10 beobachteten, ließen sich auf anderen Systemen nicht replizieren: Beim Start des VirtualBox-GUI wird eine Qt-Fehlermeldung ausgegeben, die jedoch keine weiteren Konsequenzen zu haben scheint. Lästiger: Das VM-Fenster ließ sich meist nicht auf dem Desktop verschieben – egal, welches Gastsystem darin lief. Die Entwickler vermuten die Ursache des Problems beim Ubuntu-Fenstermanager und arbeiten an einer Lösung.

Um einen Eindruck von der Performance zu gewinnen, musste das übliche Kompilieren des Kernels herhalten – zu Vergleichszwecken auch unter Vmware. Das Kompilieren des Kernels beinhaltet reichlich Festplatten-I/O, da sehr viele Dateien gelesen und geschrieben werden müssen, sowie intensive Hauptspeicherzugriffe und eine Menge Rechnerei. Dabei zeigte sich, dass sich VirtualBox und Vmware im Ausmaß der Verlangsamung gegenüber der "nackten" Maschine nicht viel geben.

Ein zweiter Test (grep durch ein Verzeichnis mit gut 100 MByte Daten) erlaubt Rückschlüsse auf die Lesegeschwindigkeit von der Platte. Sowohl Vmware als auch VirtualBox sind hier deutlich langsamer als das native System.

 nativVirtualBoxVmware
make64:03 min107:29 min101:40 min
grep (100 MByte)6,7 s20,2 s18,1 s

Vista im Fenster auf dem Ubuntu-Desktop.

Auch Vista installierte sich problemlos. Das Netzwerk ließ sich sowohl in der "Host Interface"- als auch in der NAT-Einstellung nutzen – allerdings erst, nachdem wir den PCnet-Treiber für XP nachinstalliert hatten: Vista bringt für die AMD-Netzkarte keinen Treiber mit.

Die Auflösung stellt Vista ebenfalls auf 800x600 Pixel ein, sie lässt sich aber auch ohne die Guest Additions auf 1024x768 hochstellen. Nach deren Installation sind auch höhere Auflösungen bei verschiedenen Farbtiefen möglich. Die VM fängt nun bei Aktivierung nicht mehr die Maus ein. Der Zugriff auf Freigaben des Hosts wollte unter Vista allerdings nicht gelingen.

Das neue Microsoft-System lief stabil und mit erträglichem Tempo. Allerdings gelang es nicht immer, das Image VBoxGuestAdditions.iso mit den Guest Additions über den dafür vorgesehenen Menüpunkt im laufenden Betieb zu einzubinden; gelegentlich mussten wir das Image bereits vor dem Start der VM fest als CD-ROM-Laufwerk zuweisen, damit Vista es erkannte.

Mit VirtualBox tritt eine ausgereifte Virtualisierungs-Software für Windows und Linux in den Ring, die eine Menge zu bieten hat: Stabilität, Performance, Workstation- und Serverbetrieb, zahlreiche unterstützte Gastsysteme und viele Kleinigkeiten, die den Umgang mit virtuellen Maschinen bequem machen – und all das als Open Source. Schwächen zeigen sich lediglich bei fortgeschrittenen Funktionen zur Server-Konsolidierung. Vmware, VirtualPC und Co. müssen sich warm anziehen. (odi) (odi)