Virtuelle Maschine erstellen für VMWare Player

Eine Virtuelle Maschine (VM) bietet eine Umgebung in der fremde Betriebssysteme innerhalb eines anderen ausgeführt werden können. Das Betriebssystem auf dem die Virtuelle Maschine läuft wird als Host bezeichnet, die Betriebssysteme die innerhalb der VM ausgeführt werden als Guest.
Die VM stellt für das Guest-System eine eigene Hardware-Umgebung zur Verfügung, die je nach verwendeter Software auch angepasst werden kann. Ein großer Vorteil von Virtuellen Maschinen ist der Umstand, dass das Guest-System keinen Einfluss auf das Host-System nehmen kann. Man kann sich also innerhalb der VM austoben ohne das Host-System du gefährden.
Um dies zu gewährleisten benutzen VMs abgetrennte Bereiche von Festplatte und RAM das Rechners. Es ist also von Vorteil möglichst reichhaltige Ressourcen bieten zu können.

Windows XP auf Ubuntu Linux mit Virtual Box

Windows XP auf Ubuntu Linux mit Virtual Box

In diesem Artikel geht es darum für den VMWare Player eine eigene VM-Konfiguration zu erstellen.  VMWare ist einer der bekanntesten Hersteller von VM-Software. Zu den Produkten zählen unter anderem der VMWare Server und der VMWare Player.
Der VMWare Server bietet alle Konfigurationsmöglichkeiten um eine Virtuelle Maschine zu erstellen und zu verändern. Der Player ist dazu gedacht eine so erstellte VM zu starten. Ihm fehlen alle Einstellungen die es erlauben würden auf die Konfiguration Einfluss zu nehmen.

Man muss daher auf andere Möglichkeiten zurückgreifen, um diese Konfiguration und die restlichen benötigten Dateien zu erstellen.

Das hier beschriebene Verfahren beruht auf meinen ersten Erfahrungen mit Virtuellen Maschinen. Angesichts einer Vielzahl anderer Virtualisierungs-Lösungen wie z.B. Virtual Box oder dem VMWare Server selbst, die eine bequeme grafische Konfiguration bieten, ist diese Vorgehensweise mittlerweile unnötig kompliziert.
Wie bereist erwähnt kann man mit dem VMWare Server Virtuelle Maschinen für den VMWare Player erstellen. Des weiteren werden spezielle VMs direkt von VMWare zum Download angeboten, teils jedoch als beschränkte Testversionen.

Um eine Virtuelle Maschine mit dem VMWare Player starten zu können muss man zwei wichtige Komponenten bereit stellen.
Zum einen die Konfigurationsdatei die alle Eigenschaften der Virtuellen Maschine festlegt. Zum anderen eine *.vmdk Datei, die als virtuelle Festplatte der VM dient.

Die Konfigurationsdatei lässt sich recht einfach mit einem Online Service erstellen. Auf EasyVMX lassen sich mithilfe eines Assistenten alle nötigen Optionen festlegen. Daraus wird dann eine Konfigurationsdatei generiert die man sich herunterladen kann.

Die *.vmdk Dateien kann man mit Qemu erstellen. Dabei handelt es sich auch um eine VM-Software. Diese ist in den Repositories der meisten Linux-Distributionen enthalten und lässt sich so direkt installieren. Falls nicht kann man das Programm direkt als Quellcode von der Homepage herunterladen und auf dem eigenen Rechner kompilieren.

Das Vorgehen im Einzelnen
Als erstes benötigt man den VMWare Player und Qemu.
VMWare Player kann von der VMWare Homepage herunterladen werden, jedoch ist eine Registrierung auf der Seite erforderlich.
Zum Installieren entpackt man das Archiv in einen Ordner und führt das Skript “vmware-install.pl” aus. Hat man den VMWare Player installiert muss man noch das Skript “/usr/bin/vmware-config.pl” ausführen. Dann sollte man prüfen ob alle nötigen Pakete installiert sind um ein Kernel-Modul kompilieren zu können. (Kernel Header und Sources sowie gcc)
Das Skript konfiguriert die Netzwerkschnittstelle und erstellt die Kernelmodule die zum Starten des Programms benötigt werden. Ist der Vorgang abgeschlossen sollte sich der VMWare Player starten lassen. Entweder über eine Verknüpfung im Menü des Desktops oder indem man “vmware” im Terminal ausführt.

Hinweis: Es kann vorkommen, dass sich das Programm nicht starten lässt. Im Zweifelsfall sollte man den Terminal benutzen, da man hier Fehlermeldungen bekommt. Ein bekannter Fehler ist der, dass der Player immer wieder dazu auffordert das “vmware-config.pl” Skript zu starten, auch wenn man dies bereits mehrmals getan hat. Um dieses Problem zu beheben geht man in das Verzeichnis “/etc/vmware” und sucht dort nach der Datei “not_configured”. Ist diese Datei vorhanden löscht man sie. Nun sollte der Player laufen. Dieser Fehler tritt besonders dann auf, wenn man früher bereits eine andere VMWare Software installiert hatte.

Damit ist der erste Schritt abgeschlossen.
Als nächstes erstellt man sich einen Ordner im Home-Verzeichnis in das man später alle Dateien der eigentlichen Virtuellen Maschinen packt. Es sollten einige GB Platz vorhanden sein, da besonders die Festplatten-Images Platzfresser sind.
(z.B.: “/home/user/vmachine”)

Nun kann man sich an das Erstellen der Konfiguration wagen. Dazu bietet sich wie gesagt der Online Service EasyVMX an. Auf der Seite wählt man “easy VMX v2.0” und hat dann ein Formular vor sich.
Hier sollte man jeden Punkt sorgsam durchgehen. Gleich am Anfang ist das Guest-OS und die Speichergröße wichtig. Je nachdem wieviel RAM der Rechner besitzt kann man hier Speicher vom Hauptsystem der VM zuteilen. Dabei ist ein gesundes Abwägen ganz günstig damit man dem Hauptsystem noch etwas Luft zum Atmen lässt. Mehr als die Hälfte des Speichers sollte man aber nicht verwenden.

Ebenfalls wichtig sind die Laufwerke. Zunächst wird das CD-ROM Laufwerk konfiguriert. Hier kann man das Laufwerk des Rechners nehmen oder, falls man ein ISO-Image der Betriebssystem-CD auf der Platte liegen hat, direkt den Pfad zu der *.iso Datei angeben. Z.B.: “/home/user/iso/winxp.iso”
Bei den Festplatten ist es besser die voreingestellten Werte zu belassen, da man hier die Einstellungen später in der Konfigurations-Datei direkt eintragen muss.

Am Ende wird noch eine experimentelle Direct-X Unterstützung angeboten. Falls man in diese Richtung gehen will, also z.B. Windows Spiele in der VM laufen zu lassen, kann man die Option gerne aktivieren. Ich werde aber darauf in keiner Weise eingehen, da dieses Thema noch nicht wirklich praxistauglich ist.
Zum Abschluss klickt man auf “Create Virtual Machine” und bekommt dann den Download eines Zip-Archivs angeboten. Dieses lädt man sich herunter und öffnet es. Man benötigt ausschließlich die *.vmx Datei. Diese entpackt man in das Verzeichnis, das man sich zuvor für die Virtuellen Maschinen angelegt hat. (“/home/user/vmachine”)

Der nächste Schritt ist das Erstellen der Festplatten Images die dem VMWare Player als Festplatten dienen. Hierzu benötigt man Qemu. Falls Qemu nicht in den Software-Quellen der Distribution zu finden ist, muss man sich die Quellcodes von der Homepage herunterladen.
Ist Qemu einsatzbereit wechselt man in den Ordner für die VMs, wo sich bereits die *.vmx Datei befindet.
“cd /home/user/vmachine”

Wenn man sich klar darüber ist wie groß die virtuelle Festplatte sein soll, bei Windows XP sind 7GB ganz gut, gibt man folgenden Befehl ein:
“qemu-img create -f vmdk ./windows.vmdk 7G”
Die Datei nimmt bereits die vollen 7GB ein und ist unformatiert.

Zum Schluss muss noch das Image in der Virtuellen Maschine eingetragen werden. Dazu öffnet man die *.vmx Datei mit einem Editor und sucht dann diesen Abschnitt:

# First IDE disk, size 4800Mb
ide0:0.present = “TRUE”
ide0:0.fileName = “My_Virtual_Machine.vmdk”
ide0:0.mode = “persistent”
ide0:0.startConnected = “TRUE”
ide0:0.writeThrough = “TRUE”

Hier trägt man den kompletten Pfad der *.vmdk Datei, die man mit Qemu erstellt hat, in die Zeile “ide0:0.fileName =” ein. In unserem Beispiel sieht die Zeile dann also so aus:

ide0:0.fileName = “/home/user/vmachine/windows.vmdk”

Somit hat man eine Systemfestplatte auf die man dann Windows XP installieren kann. (oder ein anderes Guest-System)

Nach dem die Datei gespeichert wurde kann man den VMWare Player starten und dort dann die *.vmx Datei öffnen. Da die virtuelle Festplatte leer ist muss man zunächst das Betriebssystem installieren, entweder über die Original-CD oder ein ISO-Image.

Wichtige Einstellungen in der *.vmx Datei
Während man mit der Virtuellen Maschine arbeitet kommt es oft vor, dass mal Einstellungen geändert werden müssen. Durch das Fehlen von Optionen im VMWare Player müssen alle diese Änderungen von Hand in der *.vmx Datei gemacht werden.

CD-ROM Laufwerk, ISO-Image und Festplatten
Um von einem ISO-Image als virtuelle CD mal auf eine CD im Laufwerk des Rechners zu wechseln öffnet man die *.vmx Datei und sucht folgenden Bereich:

ide1:0.present = “TRUE”
ide1:0.deviceType = “cdrom-raw”
ide1:0.startConnected = “TRUE”
ide1:0.fileName = “auto detect”
ide1:0.autodetect = “TRUE”

Um statt des CD-ROM Laufwerks ein ISO-Image einzubinden ändert man den Wert von  “deviceType” in “cdrom-image” und trägt den Pfad zu der *.iso Datei bei “fileName” ein.
Um sich das arbeiten zu erleichtern gibt es aber auch einen anderen Weg.

Die Virtuelle Maschine bietet, genau wie ein echter PC, vier Laufwerks-Plätze an. Einen primären und einen sekundären Controller mit jeweils einem Master und einem Slave. In der *.vmx Konfigration wird dies durch “ide0:0” und “ide0:1” sowie “ide1:0” und “ide1:1” ausgedrückt.
Da die Standard-Konfiguration nur zwei Plätze nutzt hat man also noch Spielraum. Eine gute Möglichkeit dies auszufüllen ist z.B. noch ein weiteres Festplatten-Image zu erzeugen, das als Daten-Partition für das Guest-System dient, und zwei statt nur einem CD-ROM einzutragen. Eines für das physikalische Laufwerk und eines für ein Image. So muss man nicht immer die Datei bearbeiten, um mal von dem Einen auf das Andere zu wechseln.
Um ein neues Laufwerk zu erstellen braucht man nur zwei Zeilen, bei einer CD drei. Hier am Beispiel einer weiteren Festplatte. (Die man natürlich wieder mit Qemu erstellen muss)

ide0:1.present = “TRUE”
ide0.1.fileName =”/home/user/vmachine/daten.vmdk”

Und für das CD-ROM Laufwerk des Rechners: (da wir ja oben das Laufwerk zu einem Image geändert hatten)

ide1:1.present = “TRUE”
ide1:1.deviceType = “cdrom-raw”
ide1:1.fileName = “auto-detect”

Speicher-Zuweisung für die VM ändern
Um der Virtuellen Maschine mehr oder weniger RAM zur Verfügung zu stellen sucht man nach dem Eintrag:

memsize = “…”

Als Wert trägt man die gewünschte Größe des Speichers in MB ein.

Wenn die Netzwerkkarte nicht funktioniert
Lässt sich die Netzwerkkarte der VM im Guest-System nicht installieren weil kein Treiber gefunden wird so muss man folgende Zeile aus der *.vmx Datei löschen:

ethernet0.virtualDev = “…”

Somit wird ein Standard-Treiber verwendet und es sollte daraufhin funktionieren.

Den Funktionsumfang des VMWare Player erhöhen
Der VMWare Server und die anderen großen VMWare Produkte bieten einen höheren Komfort beim Arbeiten mit der VM als der Player das kann.
So kann man z.B. die Maus frei zwischen Host und Guest bewegen, zwischen beiden Systemen die Zwischenablage nutzen und bessere Grafik- und Netzwerk-Leistung erreichen.
Dazu wird eine kleines Software Paket genutzt das VMWare Tools heißt.
Beim Player fehlt jedoch die Option diese Software herunterzuladen. Es handelt sich dabei um ein kleines ISO-Image welches eingebunden und dann installiert werden kann.
Kommt man an dieses Image heran, kann man es auch im Player installieren.

Alternativen
Wie bereits erwähnt gibt es andere VM-Lösungen die weniger Arbeit erfordern, jedoch gleiche oder ähnliche Leistung bieten.

Da man beim Abarbeiten dieser Anleitung ja bereits Qemu installiert hat, kann man diese VM auch voll ausnutzen. Allerdings wird Qemu an sich über den Terminal und Dateien konfiguriert. Es gibt allerdings grafische Frontends die eine GUI zur Verfügung stellen mit der sich alle Einstellungen vornehmen lassen.
Genannt sei hier zum Beispiel Qemulator.
Ich muss aber dazu sagen das ich selbst nie mit Qemu gearbeitet habe. Daher kann auch keine Aussage dazu machen.

Eine andere Möglichkeit ist Virtual Box. Diese VM bietet alle nötigen Einstellungen, es lassen sich VMs erstellen und ändern. Auch die Festplatten Images lassen sich mit Virtual Box erstellen. Das Programm verwendet ein eigenes Dateiformat, wodurch die VMWare Images nicht direkt genutzt werden können.
Es gibt allerdings eine englische Anleitung wie man eine VMWare Maschine in eine Virtual Box VM umwandelt. Virtual Box bietet ebenfalls ein Tool ähnlich dem von VMWare, das sich bequem herunterladen und direkt installieren lässt.

Zum Schluss möchte ich noch sagen, dass Virtuelle Maschinen ein Thema ist mit dem man sich wirklich intensiv befassen kann. Was einem aber auch gute Möglichkeiten bietet, vor Allem wenn man z.B. Software Entwickler ist oder einfach mal andere Betriebssysteme installieren und testen möchte.

Ich persönlich kann momentan Virtual Box wirklich empfehlen. Es ist alles vorhanden was man braucht, die Performance ist gut und die Oberfläche ist sehr bedienerfreundlich gestaltet.

Ich werde zu einem anderen Zeitpunkt nochmal auf Virtual Box eingehen.

Noch ein paar letzte Worte zu den experimentellen Projekten rund um VMWare. Die VMWare Software beinhaltet teilweise Möglichkeiten wie die 3D Unterstützung und die Möglichkeit statt den Festplatten Images direkt Partitionen der Festplatte selbst zu nutzen. Diese Dinge sind aber wie gesagt experimentell. Es besteht ein hohes Risiko von Datenverlust oder anderen Problemen.
Wer sich damit wirklich befassen möchte der wird bei Google einiges zu den Themen finden. Man sollte aber nicht erwarten dass die Konfiguration einfach von Statten geht.

So viel erstmal zum Thema Virtuelle Maschinen … reicht auch glaube ich. Das ist erstmal genug Lesestoff hier.🙂

This entry was posted in Linux and tagged , , , , , , , , , , , , , . Bookmark the permalink.

2 Responses to Virtuelle Maschine erstellen für VMWare Player

  1. Manuel says:

    Klasse Anleitung, die du da verfasst hast! Konnte mir definitiv ein paar Fragen beantworten.
    Hoffe, hier gibt es in Zukunft noch mehr zu lesen😉

  2. Florian says:

    Danke für die Anleitung!
    Kleine Korrektur: zum Einbinden eines eigenen CD Laufwerks muss es statt
    ide1:1.fileName = “auto-detect”
    richtig heißen:
    ide1:1.fileName = “auto detect”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s