27.2 Virtual Machine Software
Nachdem wir eben die wichtigsten Emulatoren besprochen haben, werden wir uns nun den Softwaresystemen widmen, die ganze virtuelle Maschinen ermöglichen.
27.2.1 Qemu
Als Erstes soll hier Qemu vorgestellt werden. Qemu ist eine freie und äußerst gute Virtualisierungssoftware.
Warum Qemu eigentlich Qemu heißt, weiß man nicht. Im FAQ der Software geben die Entwickler diese Frage als »unanswered« an.
Mithilfe von Qemu können Sie ohne Probleme eine beliebige Linux-Distribution, Solaris, ein BSD-Derivat oder auch Windows auf Ihrem Linux-Rechner installieren.
Das besonders Schöne daran ist, dass die Konfiguration sehr einfach vonstatten geht und mehr oder minder nur daraus besteht, dem Programm entsprechende Aufrufparameter mit auf den Weg zu geben.
Viele Architekturen
Ebenfalls erwähnenswert ist, dass Qemu besonders viele CPU-Architekturen unterstützt. Sie können damit im Prinzip auf jedem Intel-Rechner auch Solaris für Sparcs in einer virtuellen Machine installieren.
Derzeit werden x86, x86_64, ARM, Sparc, Sparc64, PowerPC und MIPS gut unterstützt. Den aktuellen Entwicklungsstatus der Architekturunterstützung können Sie jederzeit auf der Qemu-Webseite unter »Status« nachlesen.
Netzwerkunterstützung
Zudem verfügt Qemu über eine hervorragende Netzwerkunterstützung. Das Betriebssystem in der Qemu virtual Machine kann, wie jeder andere Rechner im Netzwerk, beispielsweise den DHCP-Server im LAN zur Konfiguration der Netzwerkkarte verwenden.
Virtuelle Platte
Zunächst erstellt man eine virtuelle Festplatte. Eine solche Festplatte wird im echten Dateisystem durch eine einzige Datei dargestellt. Innerhalb der virtuellen Maschine wird diese durch die Software allerdings als »echte« Festplatte dargestellt.
Das Festplatten-Image wird durch das Programm qemu-img erstellt. Wir erstellen eine 1 GByte große Festplatte mit dem Dateinamen hl.img. Die Größe wird dabei in der Form »nM« für n Megabyte bzw. »nG« für n Gigabyte angegeben.
# qemu-img create hl.img 1G Formating 'hl.img', fmt=raw, size=1048576 kB
Listing 27.1 Festplatte erstellen
Installation starten
Nun werden wir eine Installation der »Hardened Linux«-Distribution innerhalb von Qemu vornehmen. Dazu benutzen wir eine ISO-Datei (Qemu kann diese direkt verwenden und benötigt keine physikalisch vorhandenen CD-ROMs/DVDs).
$ qemu -hda hl.img -cdrom hardenedlinux-1.6.2.iso -boot d -m 80
Listing 27.2 Die Installation von Hardened Linux starten
Mit -hda wird dabei die erste Festplatte, mit -hdb eine eventuelle zweite angegeben.
Unser ISO-Image wird als CD-ROM-Laufwerk verwendet. Gebootet werden soll von der CD-ROM (-boot d).
Des Weiteren soll der virtuelle Rechner über 80 MByte RAM verfügen (-m 80).
System booten
Gebootet wird das System fast genauso wie bei der Installation. Der Unterschied besteht jedoch darin, dass wir diesmal nicht von der CD-ROM, sondern von der Festplatte booten (Parameter -boot c).
Abbildung 27.2 Qemu mit Hardened Linux und den HL Hardening Scripts
Von nun an kann man mit dem System arbeiten, als ob es ganz allein auf dem jeweiligen Rechner installiert wäre.
KQemu
Wie Sie vielleicht festgestellt haben, ist Qemu an sich nicht umwerfend performant. Aus diesem Grund wurde KQemu entwickelt. KQemu ist ein Kernel-Modul zur Beschleunigung von Qemu. Man lädt es via modprobe.
# modprobe kqemu # lsmod | grep qemu kqemu 123812 1
Listing 27.3 KQemu laden
Verfügbarkeit
Leider ist KQemu nicht für alle Architekturen verfügbar. Wenn Sie über einen Intel-kompatiblen 32/64-Bit-Rechner mit Linux 2.4/2.6 verfügen, wird KQemu allerdings funktionieren. Es gibt auch experimentelle KQemu Versionen für FreeBSD. <Unter fabrice.bellard.free.fr/qemu/kqemu-doc.html finden sich weitere Informationen.>
27.2.2 Weitere Lösungen
Neben Qemu gibt es noch weitere Virtualisierungssoftware für Linux. Bei VMWare handelt es sich um eine ebenfalls sehr einfach zu bedienende, allerdings bis auf den VMWare Player kommerzielle Software. Mit VirtualBox hingegen gibt es noch eine weitere halbfreie auf Qemu basierende Software. Die Basisversion von VirtualBox kann als GPL-lizenzierte Version aus dem Internet heruntergeladen werden, die kommerzielle Version unterstützt allerdings noch einige zusätzliche Features, wie die vollständige Unterstützung des Remote Desktop Protocols (RDP), virtuelle USB-Geräte und auch Shared Folders zwischen Gast- und Hostsystem.