Nicht nur Windows sondern ein ganzer PC

Aus LinuxUser 10/2000

Nicht nur Windows sondern ein ganzer PC

Virtuelle Maschinen

Vielleicht das populärste Produkt unter den Windows-Emulatoren ist VMware, ein kommerzielles Programm der US-basierten Firma gleichen Namens. Dabei ist VMware mehr: Hier wird gleich ein ganzer PC emuliert.

Sieht man eine frisch installierte und passend konfigurierte VMware-Installation zum ersten Mal starten, ist es schon eine kleine Sensation: In einem schwarzen Fenster erscheint die BIOS-Einschaltmeldung eines gewöhnlichen PCs, der Speicher wird hochgezählt, und man hat die Möglichkeit, das BIOS-Setup aufzurufen.

Installation von VMware

Um in den Genuss der Windows-Emulation zu kommen, sind zwei Schritte notwendig: zunächst ist die VMware-Software selbst zu installieren – um VMware benutzen zu können, ist eine Lizenz nötig. Diese können Sie entweder kostenlos von VMware’s Homepage (http://www.vmware.com) als 30-Tage-Test-Lizenz beziehen, oder Sie kaufen eine (dauerhafte) VMware-Lizenz; in beiden Fällen müssen Sie ein Verzeichnis .vmware in Ihrem Home-Verzeichnis anlegen und die Lizenz dort unter dem Namen license ablegen. Das VMware-Programmpaket ist nicht von der Art der Lizenz abhängig: VMware kommt sowohl mit Test- als auch “richtigen” Lizenzen klar. In den meisten Fällen werden Sie ein rpm-Paket installieren (bei SuSE Linux 7.0 z. B. die Datei full-names/vmware-2.0-55.i386.rpm auf der vierten CD). Dieses installieren Sie wie üblich als Administrator root mit dem Befehl

rpm -i vmware-xxx.i386.rpm

Damit ist VMware aber noch nicht einsatzfähig, da es einige spezielle Kernel-Module benötigt, die auch schon im VMware-Paket für verschiedene Kernel-Versionen enthalten sind. Um diese zu installieren (oder eventuell von Hand zu erzeugen), rufen Sie (wieder als root) das Programm vmware-config.pl auf. Es beginnt dann ein längeres (englisch-sprachiges) Frage-und-Antwort-Spiel, bei dem Sie unter anderem die notwendigen Kernel-Module installieren und ggfs. einen DHCP-Server aufsetzen, mit dem das künftige Gast-Betriebssystem automatisch eine eigene IP-Adresse beziehen kann. Ihr Linux-Rechner erhält bei dieser Gelegenheit übrigens eine zweite IP-Adresse, über die er vom Gastsystem aus ansprechbar ist. Eine beispielhafte Installation mit Erläuterungen finden Sie im Kasten “Installation mit vmware-config.pl”.

Installation mit vmware-config.pl

[root@dual esser]# vmware-config.pl
Making sure VMware's services are stopped.
...
Trying to find a suitable vmmon module for your running kernel.
None of VMware's pre-built vmmon modules is suitable for your running kernel. Do
you want this script to try to build the vmmon module for your system (you need
to have a C compiler installed on your system)? [yes] [Return]
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] [Return]

Sollten sich die Header-Dateien des Kernels an anderer Stelle befinden, dann geben Sie den korrekten Pfad an; /usr/src/linux/include/ sollte aber meistens richtig sein.

Extracting the sources of the vmmon module.
...
The module loads perfectly in the running kernel.
Making sure that both the parport and parport_pc kernel services are available.
Trying to find a suitable vmppuser module for your running kernel.
None of VMware's pre-built vmppuser modules is suitable for your running kernel.
Do you want this script to try to build the vmppuser module for your system (you
need to have a C compiler installed on your system)? [yes] [Return]

Es folgt die gleiche Prozedur für ein Kernel-Modul, das später den direkten Zugriff auf die Druckerschnittstelle erlaubt – so sollten sich z. B. Parallelport-Scanner unter Windows direkt ansprechen lassen.

Extracting the sources of the vmppuser module.
...
The module loads perfectly in the running kernel.
Do you want this script to automatically configure your system to allow your
Virtual Machines to access the host filesystem? (yes/no/help) [yes] [Return]
The version of Samba used in this version of VMware is licensed as described in
the "/usr/share/doc/packages/vmware/SAMBA-LICENSE" file.
Hit enter to continue. [Return]
Enabling networking (this is required to share the host filesystem).
Trying to find a suitable vmnet module for your running kernel.
None of VMware's pre-built vmnet modules is suitable for your running kernel. Do
you want this script to try to build the vmnet module for your system (you need
to have a C compiler installed on your system)? [yes] [Return]

Und nochmal das gleiche Spiel: Das vmnet-Modul wird später für die Netzwerk-Verbindung zwischen Linux und dem Gastsystem notwendig sein.

Extracting the sources of the vmnet module.
...
The module loads perfectly in the running kernel.
Enabling host-only networking (this is required to share the host filesystem).
Do you want this script to probe for an unused private subnet? (yes/no/help)
[yes] [Return]

Unter Umständen kann VMware selbst ein freies Subnetz, also eine Sammlung von IP-Adressen, finden, das noch nicht verwendet wird. Dies ist wichtig, damit es nicht zu Konflikten kommt. In diesem Fall hat es nicht geklappt:

Probing for an unused private subnet (this can take some time).
Unable to sendto: Network is unreachable
We were unable to locate an unused Class C subnet in the range of private
network numbers, because we did not manage to send ICMP ping packets on the
network (which is normal if your host is not connected to an IP network). You
will need to explicitly specify a network number.

Geben Sie hier die IP-Adresse ein, die Ihr Linux-Rechner später aus Sicht des VMware-Rechners, also von Windows aus, haben soll. In der Regel bietet sich eine Adresse der Form 192.168.x.y an. Die zugehörige Netmask ist 255.255.255.0.

What will be the IP address of your host on the private network?

[192.168.2.1] 192.168.2.1 [Return] What will be the netmask of your private network? [255.255.255.0] [Return] This system appears to have a CIFS/SMB server (Samba) configured for normal use. If this server is intended to run, you need to make sure that it will no conflict with the Samba server setup on the private network (the one that we use to share the host filesystem). Please check your /etc/smb.conf file so that: . The “interfaces” line does not contain “192.168.2.1/255.255.255.0” . There is a “socket address” line that contains only your real host IP address

Wenn Sie einen SAMBA-Server verwenden, muss dieser so umkonfiguriert werden, dass er Zugriffe vom virtuellen PC aus erlaubt. Dann können Sie z. B. Ihr Linux-Home-Verzeichnis unter Windows einem Laufwerksbuchstaben zuordnen und auf Ihre privaten Dateien zugreifen.

Hit enter to continue.
Starting VMware services:
   Virtual machine monitor                     [  OK  ]
   Virtual bidirectional parallel port         [  OK  ]
   Virtual ethernet                            [  OK  ]
   Bridged networking                          [  OK  ]
   Host-only and samba networking (background) [  OK  ]
You have successfully configured VMware to allow your Virtual Machines to access
the host filesystem.  Your system appears to already be set up with usernames
and passwords for accessing the host filesystem.  Would you like to add another
username and password at this time? (yes/no/help) [no] yes

Der folgende Dialog erscheint nur, wenn ein laufender SAMBA-Server gefunden wurde. Sie können dann einen neuen Benutzer anlegen, unter dem Sie sich von Windows aus am SAMBA-Server anmelden können:

Please specify a username that is known to your host: esser
New SMB password:
Retype new SMB password:
Added user huhn.
Password changed for user esser.
You have successfully configured VMware to allow your Virtual Machines to access
the host filesystem.  Your system appears to already be set up with usernames
and passwords for accessing the host filesystem.  Would you like to add another
username and password at this time? (yes/no/help) [no] [Return]

(Ein neuer Account reicht…)

...

The configuration of VMware 2.0 build-476 for Linux for this running kernel completed successfully. You can now run VMware by invoking the following command: “/usr/bin/vmware”. Enjoy, –the VMware team [root@dual esser]#

Damit beendet vmware-config.pl seine Arbeit.

VMware für die Windows-Installation vorbereiten

Beim ersten Start von VMware (durch Eingabe von vmware als normaler Anwender (nicht als root) können Sie den VMware Configuration Wizard aufrufen, mit dem Sie VMware auf die Windows-Installation vorbereiten. Wählen Sie dazu zunächst das Gast-Betriebssystem aus; in VMware 2.0.x werden die Systeme MS-DOS, Windows 3.1, 95, 98, NT 4.0 und 2000 sowie Linux und FreeBSD angeboten; auch mit anderen Systemen können Sie experimentieren, wir betrachten hier aber nur die Installation von Windows, da es in unserem Schwerpunkt um Windows-Emulation geht. Wählen Sie also im ersten Dialog des Configuration Wizard die Windows-Version aus, die Sie auf der virtuellen Maschine installieren wollen (Abb. 1).

Abbildung 1: Der Configuration Wizard ist auf die Installation einer Reihe von Betriebssystemen vorbereitet

Abbildung 1: Der Configuration Wizard ist auf die Installation einer Reihe von Betriebssystemen vorbereitet

Als nächstes ist ein Verzeichnis auszuwählen, in dem VMware Windows installieren soll. Dort wird keine Verzeichnisstruktur mit lesbaren Windows-Dateien angelegt, sondern VMware speichert dort eine Datei, die eine virtuelle Festplatte beherbergt. Aus Sicht von Windows wird dies später ein ganz normale (zunächst unpartitionierte) Platte sein, die von Windows dann wie üblich partitioniert und formatiert wird. Ein guter Ort für dieses Verzeichnis ist /home/user/vmware/windows/; VMware schlägt ein passendes Verzeichnis vor. Wichtig ist, dass in diesem Verzeichnis ausreichend freier Speicher zur Verfügung steht; schließlich nimmt Windows eine Menge Plattenplatz in Anspruch. Im nächsten Dialog ist dann anzugeben, wie groß die virtuelle Festplatte sein soll; Windows 2000 verlangt hier ca. 900 MB, ältere Windows-Versionen geben sich auch mit deutlich weniger Platz zufrieden. Geben Sie in den folgenden Masken an, ob das CD-ROM-Laufwerk und das Diskettenlaufwerk beim künftigen Start von VMware für das Gast-Betriebssystem verfügbar sein soll – eine positive Antwort auf diese Fragen hindert Sie übrigens nicht daran, CD oder Diskette auch unter Linux zu mounten.

Netzwerk

Im nächsten Punkt geht es um die Netzwerkverbindung zwischen virtuellem PC und Ihrer Linux-Maschine: Hier können Sie zwischen No networking, und (sowie einer Kombination der beiden letzten Varianten) wählen.

Für den verfügbaren Hauptspeicher, den der emulierte PC haben soll, macht VMware einen Vorschlag, der sich an dieser Stelle auch nicht ändern lässt; Sie können die RAM-Größe aber zu einem späteren Zeitpunkt über die Konfigurations-Menüs von VMware korrigieren. Es erscheint nun eine Zusammenfassung, mit welchen Optionen VMware künftig starten wird und in welchem Verzeichnis welche Dateien erzeugt werden. (Abb. 2) Bestätigen Sie diese Maske mit Done, um das Configuration Wizard zu beenden.

Abbildung 2: Zum Abschluss fasst der Installation Wizard noch einmal alles zusammen

Abbildung 2: Zum Abschluss fasst der Installation Wizard noch einmal alles zusammen

Windows-Installation

Der nächste Schritt ist die Installation des Gast-Betriebssystems; in diesem Fall Windows in einer der Versionen 95, 98, Millennium Edition, NT 4.0 oder 2000: Alle werden prinzipiell von VMware unterstützt und arbeiten unterschiedlich gut mit dem virtuellen PC zusammen. Für diesen Artikel haben wir Tests mit Windows 98, NT 4.0 und Windows 2000 durchgeführt; Testrechner war ein Dual-Pentium-III-5000 mit 256 MB RAM und einer schnellen SCSI-Festplatte. In allen Fällen lief die Installation genauso wie auf einem normalen PC ab: Legen Sie die Windows-Installations-CD in das CD-ROM-Laufwerk und klicken Sie auf den Power On-Button – dadurch wird der virtuelle PC eingeschaltet. Sehr eindrucksvoll erscheinen die üblichen BIOS-Einschaltmeldungen, auch der Hauptspeicher wird heruntergezählt, wie dies ein normaler PC tun würde. Mit [F2] könnten Sie an dieser Stelle das BIOS-Setup aufrufen, in dem sich die üblichen Dinge (darunter u. a. die Boot-Reihenfolge) einstellen lassen; dies ist jetzt aber nicht nötig. (Abb. 3)

Abbildung 3: Der virtuelle PC ist mit einem Phoenix-BIOS ausgestattet

Abbildung 3: Der virtuelle PC ist mit einem Phoenix-BIOS ausgestattet

Da die neu eingerichtete virtuelle Festplatte noch unpartitioniert ist, wird VMware dort kein Betriebssystem finden; dies merken Sie nur, wenn Sie nicht die Windows-CD eingelegt haben, denn in der Standard-Konfiguration versucht der virtuelle PC zunächst, von Diskette oder CD zu booten. Was nun abläuft, ist wirklich die ganz normale Installations-Prozedur der von Ihnen gewählten Windows-Version: Sie werden durch die Partitionierung und Auswahl der zu installierenden Windows-Komponenten geführt (zwischendurch bootet der virtuelle PC neu), und Sie können die üblichen Einstellungen (Zeitzone, Name des Windows-Verzeichnisses etc.) vornehmen. Übrigens: Wählen Sie “keine automatische Umstellung auf Winter-/Sommerzeit”, denn VMware übernimmt die Linux-Systemzeit als Hardware-Zeit des emulierten PCs, und unter Linux sorgen Sie sicher selbst für eine korrekte Systemzeit.

Konfiguration der zu installierenden Windows-Komponenten (hier: NT 4.0)

Konfiguration der zu installierenden Windows-Komponenten (hier: NT 4.0)

Die automatische Hardware-Erkennung von Windows sollte u. a. eine AMD-PCNET-Karte finden: Diese virtuelle Netzwerkkarte wird später für die Netzwerkverbindung zum Gastrechner (und darüber ggfs. auch zum lokalen Netzwerk) verwendet. (Abb. 4)

Abbildung 4: NT 4.0 erkennt eine AMD-PCNET-Netzwerkkarte

Abbildung 4: NT 4.0 erkennt eine AMD-PCNET-Netzwerkkarte

Nach der vollständigen Installation wird der virtuelle PC neu gebootet. Nehmen Sie die Windows-CD aus dem Laufwerk, um nicht erneut das Installationsprogramm zu starten. Nun sollte VMware von der virtuellen Platte booten und schließlich den Windows-Anmeldebildschirm präsentieren (Abb. 5).

Abbildung 5: Anmeldebildschirm von NT 4.0

Abbildung 5: Anmeldebildschirm von NT 4.0

VMware-Grafiktreiber

Da bei der Installation von VMware nur eine Standard-VGA-Grafikkarte erkannt wird, präsentiert sich Windows beim ersten Start in einer unbefriedigenden 640×480-Auflösung. Diese Betriebsart hat neben der viel zu kleinen Oberfläche noch weitere Nachteile: Sobald Sie erstmals in das VMware-Fenster geklickt haben, bleibt die Maus dort gefangen – Sie können dann den Windows-Mauszeiger bewegen, können das Fenster aber nicht mehr verlassen (für den Anfang können Sie die Maus mit der Tastenkombination [Strg-Alt-Esc] “befreien”). VMware besitzt aber spezielle Treiber für Windows 95/98/NT 4.0/2000, mit denen sich wesentlich komfortabler arbeiten lässt. Diese sind auf einer Diskette gespeichert, die VMware auf Wunsch bereitstellt: Wählen Sie dazu den Menüpunkt Settings/VMware Tools Install (s. Abb. 6). Nach einem Warnhinweis führen alle folgenden Zugriffe auf das Diskettenlaufwerk “A:” nicht mehr auf eine evtl. eingelegte Diskette sondern auf eine virtuelle Treiberdiskette. Gehen Sie nun durch die unter der gewählten Windows-Version übliche Prozedur zur Installation einer neuen Grafikkarte und wählen Sie von der Diskette den passenden Treiber aus. Nach einem Neustart der VMware-PCs können Sie eine höhere Auflösung einstellen. Installieren Sie zudem die VMware-Tools unter Windows, die ein Icon in die Windows-Startleiste integrieren, über das Sie VMware den Zugriff auf CD und Diskette erlauben oder nehmen können.

Abbildung 6: Die VMware-Tools-Diskette "einlegen"…

Abbildung 6: Die VMware-Tools-Diskette “einlegen”…

Netzwerk

VMware startet, wenn Sie bei der VMware-Konfiguration ganz am Anfang (vmware-config.pl) eine der Optionen Host-only Networking oder Bridged Networking gewählt haben, automatisch einen DHCP-Server, über den das installierte Windows automatisch eine IP-Adresse beziehen kann. Dazu müssen Sie Windows natürlich sagen, dass es im “lokalen Netz” nach einem solchen Server suchen soll. Unter Windows 95/98 und NT 4.0 klappt dies auch ganz ausgezeichnet: In der Testkonfiguration mit NT 4.0 hatte der Linux-PC die IP-Adresse 192.168.0.4 (im lokalen Netz 192.168.0.*) sowie zusätzlich die speziell für VMware konfigurierte Adresse 192.168.2.1; NT erhielt in der Emulation vom DHCP-Server die Adresse 192.168.2.128 zugeteilt, und es war sofort z. B. ein Telnet auf den Linux-Rechner möglich; über einen unter Linux laufenden WWW-Proxy (z. B. wwwoffle oder squid) war auch das Surfen im Internet möglich; lediglich Windows 2000 verweigerte bei unseren Tests die Zusammenarbeit und konnte den DHCP-Server offenbar nicht finden. Ob der DHCP-Server überhaupt angesprochen wurde und eine IP-Adresse vergeben hat, lässt sich dabei leicht feststellen: In der Datei /etc/vmware/vmnet1/dhcpd/dhcpd.leases finden Sie für jede vergebene IP-Adresse einen Eintrag der Form

lease 192.168.2.128 {
    starts 0 2000/09/03 23:25:18;
    ends 0 2000/09/03 23:55:18;
    hardware ethernet 00:50:56:c0:67:33;
    uid 01:00:50:56:c0:67:33;
    client-hostname "VMWARE";
}

Ist die Datei hingegen (bis auf einige mit “#” beginnende Kommentarzeilen) leer, wurde keine Adresse vergeben. Unter den meisten Windows-Versionen können Sie zudem in einem COMMAND.COM-Fenster mit dem Befehl

C:\> route print

feststellen, ob eine IP-Adresse vergeben wurde. Taucht dort nur die Standard-IP-Adresse 127.0.0.1 (localhost) auf, hat es nicht geklappt. Richtig sieht es aus wie in Abb. 7.

Abbildung 7: Hier zeigt "route print" auch die vom DHCP-Server vergebene IP-Adresse 192.168.2.128 an

Abbildung 7: Hier zeigt “route print” auch die vom DHCP-Server vergebene IP-Adresse 192.168.2.128 an

Die Welt der Windows-Programme

Nun steht einer Installation beliebiger Windows-Programme nichts mehr im Weg – installieren Sie beispielsweise Microsoft Office 2000 (s. Abb. 8) und befreien Sie sich damit von allen Inkompatibilitäten. Für alle eingesetzten Programme und auch für das Betriebssystem selbst benötigen Sie natürlich eine Lizenz. Dass die Verwendung von Windows unter Linux grundsätzlich nicht zulässig wäre, brauchen Sie übrigens nicht befürchten – VMware verkauft sogar Bundle-Pakete, die neben VMware auch eine Windows-Lizenz enthalten.

Abbildung 8: Endlich: Word und Excel aus dem Office-2000-Paket unter Linux; dank den VMware-Tools auch in einer brauchbaren Auflösung (Linux: 1280x1024, Windows: 1152x864)

Abbildung 8: Endlich: Word und Excel aus dem Office-2000-Paket unter Linux; dank den VMware-Tools auch in einer brauchbaren Auflösung (Linux: 1280×1024, Windows: 1152×864)

Suspend und Resume

Ein besonders nützliches Feature von VMware (ab Version 2.0) ist die Möglichkeit, den aktuellen Zustand des emulierten PCs jederzeit über den Suspend-Button einzufrieren: VMware speichert dann in einer Datei namens z. B. vmware/nt4/nt4.std den gesamten Hauptspeicher und einige weitere Daten und hält den PC an. Nun können Sie VMware beenden und beim nächsten Start über den Resume-Button diesen Zustand wieder laden: Sie können dann an der alten Stelle weiter arbeiten. Vorteil dieser Methode ist, dass Sie sich den Boot-Vorgang und das erneute Öffnen aller Anwendungen ersparen. Allerdings wird zum Abspeichern des Zustands eine Menge Plattenplatz benötigt.

VMware-Dateien

Jede von Ihnen konfigurierte virtuelle Maschine besitzt ein eigenes Verzeichnis (i. d. R. $HOME/vmware/os/, wobei “os” für den Namen des Betriebssystems steht, z. B. nt4 oder win2000). Dort finden Sie dann jeweils eine Konfigurationsdatei (nt4.cfg), die virtuelle Festplatte (nt4.dsk), eine Log-Datei (nt4.log), die BIOS-Konfiguration (nt4.nvram) sowie gegebenenfalls den letzten über Suspend gesicherten Zustand (nt4.std).

Glossar

Bridged Networking

Beim Bridged Networking erhält die virtuelle Maschine transparenten Netzwerkzugriff auf das gesamte Netzwerk, in dem sich Ihr Linux-Rechner befindet; so kann dann z. B. von außen auf einen Apache-Web-Server zugegriffen werden, der auf Ihrem unter VMware laufenden Windows NT installiert wurde. Andersrum können Sie vom VMware-Windows aus per Telnet oder über einen Web-Browser auf andere Computer im lokalen Netzwerk zugreifen. Diese Einstellung ist nur sinnvoll, wenn Sie auch tatsächlich ein lokales Netzwerk betreiben.

Host-only networking

Dies ist die meist sinnvollere Variante: Es wird nur eine (virtuelle) Netzwerkverbindung zwischen dem Linux-PC (Host) und dem virtuellen Rechner (Guest) aufgebaut; für ein evtl. vorhandenes lokales Netzwerk bleibt die virtuelle Maschine unsichtbar. Wenn Sie von Windows aus auf Ihre Linux-Dateien zugreifen wollen (wozu Sie einen SAMBA-Server konfigurieren müssten), ist dies die Option Ihrer Wahl. Benötigen Sie einen solchen Zugriff nicht, können Sie auch No networking auswählen.

LinuxUser 10/2000 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben