![]() |
|
Linux - Wegweiser zur Installation & Konfiguration, 3. AuflageOnline-VersionBitte denken Sie daran: Sie dürfen zwar die Online-Version ausdrucken, aber diesen Druck nicht fotokopieren oder verkaufen. Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen. Wünschen Sie mehr Informationen zu der gedruckten Version des Buches Linux - Wegweiser zur Installation & Konfiguration oder wollen Sie es bestellen, dann klicken Sie bitte hier.
|
Die bekanntesten Nicht-Linux-Betriebssysteme, bei denen die Kompatibilität wichtig ist - in denen also Leute ihre Programme und Dateien auch unter Linux verwenden wollen -, sind Derivate von DOS: MS-DOS, PC-DOS, Novell DOS und Windows 3.1 und neuer. Sie können das MTools-Paket von Linux verwenden, um DOS-Dateisysteme zu durchsuchen, Dateien von DOS-Dateisystemen zu lesen und zu kopieren und darauf zu schreiben. Kompatibilität ist aber noch sehr viel mehr als nur das Verstehen von DOS-Dateisystemen.
Es gibt zwei Pakete, die dafür gedacht sind, Linux die gewünschte DOS-Kompatibilität beizubringen. Das eine ist Dosemu, das andere Wine. Wir besprechen hier beide, weil sie für die Linux-Gemeinde ziemlich wichtig sind.
Es sollte hier aber festgehalten werden, daß weder Dosemu noch Wine fertige Produkte sind. Beide Entwicklungsteams haben bewundernswerte Fortschritte gemacht, wenn man die Schwierigkeit der Aufgabe bedenkt, aber Sie sollten diese Pakete trotzdem nur dann verwenden, wenn Sie bereit sind, sich damit auseinanderzusetzen, Dinge etwas anders zu konfigurieren und vielleicht sogar Fehler zu finden und zu beheben. Wenn Sie lieber ein fertiges, kommerzielles Produkt verwenden möchten, dann können Sie WABI (Windows Application Binary Interface) von Caldera, Inc., kaufen, eine Portierung des gleichnamigen Produkts für Solaris, das zwar ziemlich stabil ist, aber nur Windows 3.1-Programme ausführen kann.
Noch eine weitere Anmerkung: Vor zwei Jahren hatten binäre Emulatoren wie Dosemu und Wine eine besonders hohe Bedeutung für die Linux-Gemeinde, weil es nicht sehr viel kommerzielle Software gab. Diese Situation hat sich aber inzwischen grundlegend verändert. Viele kommerzielle Softwarehersteller stellen ihre Produkte jetzt auch für Linux bereit, so daß Sie möglicherweise auch ohne Emulator das bekommen können, was Sie wollen. Denken Sie daran, daß Emulation immer auch Nachteile hat: Kein emuliertes Programm kann schneller oder stabiler sein als ein natives.
Wine bekam kürzlich neuen Aufschwung, da Corel ankündigte, seine Produkte wie CorelDRAW mittels Wine auf Linux zu portieren, also die weitere Entwicklung von Wine zu unterstützen. Dies ist eine bemerkenswerte Anerkennung der herausragenden Arbeit des Wine-Teams, aber es bleibt abzuwarten, ob diese Pläne erfolgreich durchgeführt werden können.
Die Entwicklungsteams, die an Dosemu und Wine arbeiten, würden sich freuen, wenn weitere Entwickler hinzustoßen und mithelfen, aber wenn Sie einfach nur die Programme benutzen wollen oder zwar Programmierer sind, aber keinen Internetzugang haben, um mit den anderen Entwicklern in Kontakt zu treten, dann sind diese Pakete möglicherweise nicht das richtige für Sie.
Es gibt auch Emulatoren für den Apple II und CP/M, Betriebssysteme und Rechner, die wie viele andere längst vergessen sind. Diese Emulatoren liefen ursprünglich auf anderen Betriebssystemen (wie MS-DOS) und sind inzwischen auf Linux portiert worden. Sie bekommen sie von den üblichen Linux-FTP-Servern, die Emulator-Software vorhalten, besonders ftp://ftp.metalab.unc.edu und dessen Spiegel im Pfad /pub/Linux/system/emulators.
Eine Demo eines kommerziellen (aber preisgünstigen) Macintosh-Emulators namens Executor/Linux kann von http://www.ardi.com heruntergeladen werden. Es handelt sich dabei um die Linux-Version eines Pakets, das seit mehreren Jahren für NeXT und seit mehr als einem Jahr für DOS-Rechner angeboten wird. Es lohnt sich allein schon, wenn Sie nur Mac-Disketten und SCSI-Formate lesen und schreiben wollen, was auch mit der Demo-Version funktioniert. (Die Entwickler dieses Produkts haben angekündigt, daß sie den Quellcode ihres Mac-Datei-Browsers allgemein verfügbar machen wollen.)
Wenn Sie sich über die Entwicklung von Executor/Linux auf dem laufenden halten wollen, schicken Sie eine E-Mail an majordomo@nacm.com mit einem leeren Subject:-Feld und dem Text subscribe executor.
Wir sollten zunächst einmal festhalten, daß die »DOS-Emulatoren« von Linux, Dosemu und xdos, keine echten Emulatoren sind. Man kann sie eher als virtuelle Maschinen ansehen, mit denen DOS und unter DOS laufende Applikationen im Real-Mode (dem virtuellen 8086-Modus) in einer »Kompatibilitätsbox-Umgebung« ausgeführt werden können, ähnlich der Funktionsweise von DOS auf einem Standard-Intel-80286 oder -80386. Weil der virtuelle 8086 dazu zwingend notwendig ist, können Dosemu und xdos nur auf Chipsätze portiert werden, die den Intel-Real-Mode implementieren. xdos ist lediglich eine Version von Dosemu, die sich bequem in einem X-Fenster ausführen läßt. Wir werden uns hier also hauptsächlich auf Dosemu konzentrieren.
Sie sollten 8 MB an RAM haben, um Dosemu verwenden zu können, außerdem ist es empfehlenswert, eine Swap-Partition von mindestens 12 MB einzurichten.
Dosemu emuliert das BIOS, den CMOS-Speicher, XMS- und EMS-Speicher, Festplatten, die Tastatur, serielle Geräte und Drucker sowie weitere notwendige Rechnerfunktionen, so daß DOS in dieser kontrollierten Umgebung arbeiten kann. Dosemu benötigt eine (lizensierte) Version von entweder OpenDOS (früher DR-DOS genannt) oder MS-DOS 6.22, aber andere Versionen könnten auch funktionieren. Weil OpenDOS frei verfügbar ist, wird es von den Dosemu-Entwicklern bevorzugt.
Dosemu versucht, DOS- und BIOS-Systemaufrufe abzufangen und in Linux auszuführen, ist dabei aber nicht immer erfolgreich. Die BIOS-Druckerdienste von DOS werden mit Unix-Datei-I/O emuliert, wobei die Ausgabe auf einen Drucker in eine dazugehörige Linux-Datei umgeleitet wird. Dosemu hat Schwierigkeiten mit der Unterstützung einiger Mäuse, insbesondere mit Busmäusen.
Wir raten Ihnen nicht, Dosemu zu verwenden, wenn Sie nicht bereit und in der Lage sind, zur weiteren Entwicklung des Pakets beizutragen, und wenn Sie keinen Internetzugang haben, um mit dem Entwicklungsteam in Kontakt zu treten. Allerdings scheint Dosemu inzwischen stabil und nützlich genug zu sein, um es als Paket zu diskutieren, dessen Installation Sie erwägen sollten. Denken Sie allerdings daran, daß die Dokumentation von Dosemu hinter der Entwicklung der Software zurückliegt. Wenn Sie nicht in die Entwicklung von Dosemu eingebunden sind, kann es schwierig sein, neue Features zu verwenden, aber diese sind möglicherweise ohnehin noch nicht besonders stabil.
Neuere Versionen von Dosemu enthalten einige Funktionen, die ursprünglich als Teil des DOS-Emulators für Mach der Carnegie-Mellon-Universität entwickelt worden sind, weswegen die Dosemu-Distributionen den wenig einschränkenden CMU-Copyright-Vermerk tragen. Dieser bittet Entwickler, die auf der Arbeit von CMU aufbauen und damit Software entwickeln wollen, eine Kopie ihrer Arbeit wieder der CMU zur Verfügung zu stellen und dieser zu gestatten, diese Arbeit zu verwenden und weiterzuverbreiten. (Der Copyright-Vermerk verlangt, daß dieser Vermerk in jeder Distribution, die ihre Software enthält, enthalten ist, ob der Code nun modifiziert worden ist oder nicht.) Sie sollten den Copyright-Vermerk der CMU beachten - wenn Sie also an der Entwicklung von Dosemu mitarbeiten wollen, dann lesen und halten Sie sich an ihn.
Das Dosemu-Paket enthält Skripten und Hilfsprogramme, mit denen das Paket installiert und verwaltet werden kann. Dosemu wird wöchentlich aktualisiert, und jede Distribution enthält eine Liste der Software, von der bekannt ist, daß sie mit der aktuellen Version des Pakets läuft (oder auch nicht).
Der FTP-Server, der garantiert die neueste veröffentlichte Version von Dosemu enthält, ist ftp://tsx-11.mit.edu . Die Dateien stehen in dem Verzeichnis /pub/linux/ ALPHA/dosemu. (»ALPHA« steht dabei für den Status der Programme, nicht für die Rechnerarchitektur Alpha.) Die neueste Dokumentation ist ebenfalls enthalten.
Dosemu selbst unterstützt keine komprimierten Dateisysteme, aber Sie können einen speziellen Treiber in den Linux-Kernel einbinden, der komprimierte Dateisysteme mounten kann und dann auf diese gemounteten Dateisysteme von Dosemu aus zugreift.
Bevor Sie das Dosemu-Paket installieren, müssen Sie den Linux-Kernel zunächst mit IPC (System V InterProcess Communication) kompilieren. Wenn Sie das während der Installation von Linux nicht getan haben, dann müssen Sie es jetzt nachholen, bevor Sie Dosemu installieren können, denn dieser Emulator verwendet System V-Shared Memory. Wir empfehlen Ihnen dringend, eine aktuelle Version von Linux als Basis für Dosemu zu nehmen und Dosemu mit einer aktuellen Version des Compilers gcc und den dazugehörigen Bibliotheken zu verwenden. Linux 2.0.28/2.1.15 sowie neuere Versionen enthalten die notwendige Kernel-Unterstützung für Dosemu.
Sie müssen gcc, Version 2.7.2, und libc, Version 5.4.7, oder neuer für diese Version von Dosemu haben. Neuere Versionen von Dosemu benötigen möglicherweise auch neuere Versionen von Linux, gcc und den C-Bibliotheken.
Booten Sie Linux, und loggen Sie sich als root ein. Kopieren Sie das Dosemu-Paket in das Verzeichnis /root, und entpacken Sie es. (Der Name des Dosemu-Pakets kann sich vom hier verwendeten unterscheiden; wir haben die Datei via DOS heruntergeladen und dann in das Linux-Dateisystem kopiert.)
Die Dateien werden in das Verzeichnis dosemu-0.98.4 und Unterverzeichnisse davon entpackt.
Lesen Sie jetzt die Dokumentation. Die Distribution enthält eine Datei HOWTO im Verzeichnis dosemu-0.98.4/doc. Lesen Sie außerdem die Datei QuickStart. Mit Dosemu wird ein Skript namens ViewDocs mitgeliefert, mit dem Sie die Dokumentation bequem betrachten können.
Eine Datei namens DANG (Dosemu Novice's Altering Guide) enthält Hinweise zur Anpassung des Quellcodes. Diese Datei wird automatisch mit jeder Version aus dem Quellcode generiert. Außerdem beschreibt die Manpage dos(1) den aktuellen Zustand des Befehls dos Ihrer Version von Dosemu. Es gibt ein Texinfo-Dokument zu Dosemu (dosemu.texinfo), das deutlich hinter der aktuellen Entwicklung hinterherhinkt. Es enthält aber nützliche Informationen zur Vorbereitung einer Dosemu-Installation.
Wenn Sie Ihren Kernel neu kompilieren müssen, um Unterstützung für IPC und DOS-Dateisysteme einzubauen und einen Kernel-Patch zu installieren, dann tun Sie das jetzt.
Gehen Sie - immer noch als root - in das Verzeichnis dosemu-0.98.4, und stellen Sie sicher, daß sich dort die Datei Makefile befindet. Geben Sie folgende Befehle ein:
Sie können jetzt Ihren frisch installierten Dosemu mit einem bereitgestellten, winzigen FreeDOS-Image ausprobieren:
Wenn dies funktioniert, ist Ihr Dosemu wahrscheinlich korrekt erzeugt worden.
Als nächstes müssen Sie einige Konfigurationsdateien kopieren und editieren:
Als nächstes müssen Sie ein DOS-Boot-Image erzeugen. Wenn Sie eine aktuelle Version des MTools-Pakets (Version 3.8 oder neuer) und eine »bootbare« DOS-Partition oder eine DOS-Boot-Diskette haben, können Sie das mit Dosemu gelieferte Programm setup-hdimage verwenden, wie im folgenden Beispiel gezeigt wird:
setup-hdimage
checking your partitions, wait...
...done
I've seen the following DOS partitions (perhaps non-bootable):
/dev/fd0
A normal MSDOS system has command.com as shell.
If you have a different one, please enter the name,
else just type ENTER
We now try to generate a bootable hdimage into /var/lib/dosemu/
hdimage.first and are calling ./dexe/mkdexe for this.
You will be prompted to edit the configuration files
(config.sys, autoexec.bat e.t.c).
Enter the name of your favorite editor, if you type just ENTER, the
editor given via the EDITOR environment variable will be used.
Starting ...
System type is IBMorOpenDos. sysfiles: ibmbio.com, ibmdos.com, command.com
1+0 records in
1+0 records out
Cannot create entry named . or ..
Skipping "config.sys", is not a directory
Skipping "autoexec.bat", is not a directory
... done
In diesem Fall haben wir eine »bootbare« OpenDOS-Diskette verwendet. Wenn alles glattgeht, sollte die Datei /var/lib/dosemu/hdimage.first erzeugt werden und Ihr DOS-Boot-Image enthalten. Wenn Probleme aufgetreten sind, müssen Sie möglicherweise die alte Methode zum Erzeugen eines Boot-Images verwenden. Lesen Sie dazu in der Datei doc/README-tech.txt, Abschnitt 7.
Kontrollieren Sie als nächstes, daß Ihre Datei /etc/dosemu.conf die Zeile
enthält. Hier kann mehr als eine Image-Datei stehen, aber hdimage.first sollte die erste sein.
Jetzt können Sie Dosemu starten:
Dosemu sollte etwa folgende Ausgaben machen:
Sie sind jetzt soweit, Ihren DOS-Emulator auszuprobieren. Lesen Sie aber auf jeden Fall die Dokumentation, um sich mit den vielen Möglichkeiten von Dosemu vertraut zu machen. Indem Sie /etc/dosemu.conf editieren, können Sie schnell Probleme mit bestimmter DOS-Software, Terminal-Modi, Soundkarten-Unterstützung und ähnlichem beheben. Sie können Verweise auf weitere DOS-Verzeichnisse auf Festplatten hinzufügen. Wenn Sie mit der Arbeit mit Dosemu fertig sind, können Sie den Emulator mit
beenden. Wenn Sie Dosemu in einem eigenen X-Fenster starten wollen, können Sie das Programm xdos ausführen. Möglicherweise müssen Sie vorher den Befehl
eingeben, um die neu installierten DOS-Fonts verfügbar zu machen.
Wenn Sie mutig sind, können Sie sogar Windows 3.x im Real-Mode ausprobieren, indem Sie es in Ihr DOS-Festplatten-Image installieren und dann
Wine ist das ambitionierteste DOS/Windows-Kompatibilitäts-Paket und hat einen gewaltigen potentiellen Wert für die Linux-Gemeinde. Es wurde von WABI inspiriert, das ursprünglich von Sun Microsystems entwickelt wurde, um Microsoft Windows-Software direkt unter Solaris ausführen zu können. WABI wurde von Sun an andere System V-Portierungen auf den Intel-PC lizensiert, und eine WABI-Entwicklergruppe, die aus mehreren Unix-Herstellern besteht, leitet die weitere Entwicklung von WABI. Wir kennen keinen Linux-Hersteller, der ein Mitglied dieser Gruppe ist, aber Caldera hat zumindest WABI von SunSoft lizensiert. Die WABI-Spezifikationen sind allgemein verfügbar gemacht worden, und das Linux-Dosemu-Team hat sie für die Wine-Entwicklung verwendet. Wine wird zur Zeit für Linux, NetBSD und FreeBSD entwickelt, Corel hat den ersten kommerziellen Support angekündigt.
Um Wine zu verwenden, benötigen Sie mindestens 16 MB an RAM und eine mindestens 32 MB große Swap-Partition auf der Festplatte.
Wine besteht hauptsächlich aus einem Programmlader, der 16-Bit-Applikationen für MS-Windows lädt und ausführt, sowie einer Emulationsbibliothek, die Aufrufe von MS-Windows-Funktionen in Linux- und X-Aufrufe übersetzt. Wie in der Wine-FAQ zu lesen ist, steht Wine entweder für »WINdows Emulator« oder »Wine Is Not an Emulator« (Wine ist kein Emulator). Beide Deutungen sind richtig. Wenn Wine einmal vollständig entwickelt ist, werden die meisten Windows-Applikationen in einer Linux/X-Umgebung unter Wine laufen, und das auch noch genauso schnell wie unter Windows, vielleicht sogar noch schneller. Ein von Linux unterstützter Grafikchip sorgt für eine sehr viel bessere Performanz des X Window Systems und damit auch für eine sehr viel bessere Performanz von WABI.
Derzeit macht auch die Wine-Unterstützung für Win32-ABI (für 32-Bit-Windows 95/98- und NT-Applikationen) gute Fortschritte. Die Wine-Entwickler hoffen, irgendwann einmal sowohl 16- als auch 32-Bit-Applikationen ausführen zu können.
Wine ist unabhängig vom Dateisystem und kann auf jedem Linux- (oder Unix-) Dateisystem verwendet werden. Sie müssen das X Window System verwenden, um Wine ausführen zu können. Wine wird aus einem von Ihrem Lieblings-Window-Manager geöffneten Fenster ausgeführt:
Dabei ist pfadname ein Pfadname, der entweder Linux- oder DOS-Konventionen gehorcht, und winapp.exe ein ausführbares Windows-Programm.
Wir möchten Ihnen derzeit nicht empfehlen, Wine zu verwenden, wenn Sie kein Programmierer sind, der zur weiteren Entwicklung dieses ambitionierten Pakets beitragen möchte. Wine kann derzeit noch mit Fug und Recht als im Alpha-Zustand befindlich betrachtet werden. Es implementiert zur Zeit noch nicht die vollständige Programmierschnittstelle (API) von MS-Windows. Weil wir der Meinung sind, daß Sie Wine derzeit nicht effektiv nutzen können, wenn Sie kein Programmierer mit Internetzugang sind, der zu diesem Projekt beitragen kann, werden wie hier nicht besprechen, wie Wine installiert und konfiguriert wird.
Wenn Sie sich an der Entwicklung von Wine beteiligen möchten oder einfach nach weiteren Informationen suchen, lesen Sie am besten auf der Website von Wine Headquarters nach, die Sie unter http://www.winehq.com finden; hier bekommen Sie auch die aktuellste Wine-Version.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Weitere Informationen zum Linux - Wegweiser zur Installation & Konfiguration
Weitere Online-Bücher & Probekapitel finden Sie in unserem Online Book Center
© 2000, O'Reilly Verlag