Virtual OS/2 International Consumer Education
VOICE Homepage: http://de.os2voice.org
Februar 2003

[Inhaltsverzeichnis]
[Vorherige Seite] [Nächste Seite]
[Artikelverzeichnis]

editor@os2voice.org


NFS, TCP/IP, OS/2 und Linux - cross-platform mit aller Macht

Von Michael W. Cocke © Februar 2003, Übersetzung: Christian Hennecke

Vorwort - Ein paar Worte zur Leistungsfähigkeit von NFS.
Teil 1 behandelt die Konfiguration von NFS unter OS/2.
Part 2 behandelt die Konfiguration von NFS unter Linux.
Part 3 behandelt den Zugriff auf NFS-Ressourcen unter beiden Plattformen.

Es wird ein grundlegendes Verständnis von OS/2 und Linux vorausgesetzt.

Vorwort - Ein paar Worte zur Leistungsfähigkeit von NFS

Teil 1 - NFS unter OS/2 konfigurieren

Mit wurde mitgeteilt, daß viele Schwierigkeiten bei der Konfiguration von NFS unter OS/2 haben, aber ich selbst fand es wesentlich einfacher, als NetBIOS über TCP/IP zu konfigurieren.

Zuerst einmal müssen Sie NFS für OS/2 installiert haben. Es scheint keinen vernünftigen Weg dafür zu geben, außer bei der anfänglichen Installation von OS/2. Es steht beispielsweise nicht bei den beiden selektiven Installationsmöglichkeiten zur Verfügung. Wenn Sie auf ein System Zugriff haben, auf dem NFS bereits installiert ist, ist es eine triviale Angelegenheit, es auf ein anderes System zu kopieren.

Öffnen Sie TCP/IP-Konfiguration (lokal), welche sich im Ordner TCP/IP im Ordner Systemkonfiguration befinden sollte. Wenn das Einstellungsnotizbuch erscheint, klicken Sie auf die obere Indexzunge Host-Namen, dann auf die untere Indexzunge Hosts.

TCP/IP-Konfiguration - Indexzunge Host-Namen

Am wichtigsten ist: Überzeugen Sie sich, daß HOSTS-Liste durchsuchen, bevor Namen-Server abgefragt wird (unten) markiert ist!

Sichern Sie die Änderungen und schließen Sie das Notizbuch. Sie müssen das System neu starten, es sei denn, HOSTS-Liste durchsuchen, bevor Namen-Server abgefragt wird wäre schon vorher ausgewählt gewesen.

Als nächstes müssen der automatische Start des NFS-Servers und die Sicherheitseinstellungen konfiguriert werden.

TCP/IP-Konfiguration - Indexzunge Autostart

ACHTUNG: Neben NFSD müssen Sie auch portmap automatisch starten lassen, um NFSD nutzen zu können. Sie können dafür den Modus Im Hintergrund auswählen. Meine Empfehlung wendet sich aus Gründen, auf die ich im Abschnitt Fehlerbehandlung eingehen werde, gegen ein detach des NFSD.

Als nächstes konfiguriert man die Sicherheitseinstellungen für NFS-Benutzer. Belassen Sie die Benutzer-ID (UID) und Gruppen-ID (GID) erst einmal auf 0 (Null). Diese Einstellungen teilt OS/2 mit, für welche Benutzer- und Gruppen-IDs es Linux-artige Zugriffsberechtigungen simulieren soll. Bei 0/0 handelt es sich um "root", was unter OS/2 einem "Administrator" entspricht.

TCP/IP-Konfiguration - Indexzunge Sicherheit

Nun sollten Sie festlegen, welche lokalen Ressourcen über NFS verfügbar gemacht werden sollen, genauso wie man gemeinsame Zugriffe und Verbindungen beim Warp Peer einrichtet - mit ein paar wenigen Unterschieden, auf die ich später eingehe.

TCP/IP-Konfiguration - Indexzunge NFS

Da Benutzer-ID (im allgemeinen) dazu neigen, sich plattformspezifisch zu verhalten und NFS besonders dafür ausgelegt wurde, nicht an eine bestimmte Plattform gebunden zu sein, werden Zugriffberechtigungen auf andere Art und Weise gehandhabt.

Zuerst einmal empfehle ich dringend, beim Definieren des Alias eines freizugebenden Verzeichnisses weder einen Backslash (\), noch einen Schrägstrich (/), noch einen Bindestrich (-) als Teil des Namens zu verwenden. Der Grund dafür ist einfach und läßt Neulinge bei der plattformübergreifenden Vernetzung jedesmal scheitern... Windows und OS/2 verwenden einen Backslash als Pfadtrenner und einen Schrägstrich als Parameterzeichen (Befehlszeilenschalter). BSD, Unix und Linux verwenden einen Schrägstrich als Pfadtrenner und einen Bindestrich als Parameterzeichen. Denken Sie daran, daß Sie den Alias - gewöhnlich mit Optionen (Schaltern) - auf jedem System eingeben müssen... Es ist also in der Tat möglich, einen Gerätealias zu erstellen, auf den man nicht von anderen Plattformen aus zugreifen kann! Großes Malheur.

Für jedes Verzeichnis, auf welches Sie über NFS zugreifen lassen können wollen, können Sie auch angeben, wer darauf zugreifen darf - und wie. Beachten Sie, daß Sie "public" angeben können, was bedeutet, daß in diesem Verzeichnis jeder alles tun darf. Sie können auch Nur-Lese-Zugriff oder Schreib/Lese-Zugriff abhängig von HOSTNAME oder IP-Adresse festlegen. Ja, das ist genauso wie es sich anhört - der Benutzer benötigt keine Benutzer-ID und Passwort, sondern erhält Zugriff, wenn der richtige Rechner benutzt wird.

Eine kurze Nebenanmerkung zum Thema Sicherheit: Denken Sie bitte daran - wenn Sie eine NAT-Ebene zur Verbindung mehrerer Rechner mit dem Internet nutzen, haben alle Ihre Rechner genau diegleiche IP-Adresse, sobald diese Ebene überschritten wurde! Das heißt, daß nicht nur Sie die korrekte IP-Adresse für den Zugriff auf das NFS-Laufwerk in der Firma besitzen, sondern auch Ihr sieben Jahre alter Sohn...

Das wäre grundsätzlich, wie man einen NFS-Server unter OS/2 einrichtet.

Fehlerbehandlung

Falls NFSD started und sich dann ohne Fehlernachricht und ohne ersichtlichen Grund wieder beendet, löschen Sie die Datei \MPTN\ETC\IBMNFSFH.DB, denn sie wird wohl defekt sein. Aus diesem Grund empfehle ich, NFSD nicht im Hintergrund zu starten - falls dies passiert, haben Sie ansonsten keine Möglichkeit zu wissen, warum.

Abgesehen von dieser besonderen Eigenheit ist die Fehlerbehandlung dieselbe wie bei TCP/IP im allgemeinen.

Teil 2 - NFS unter Linux konfigurieren

Wie man NFSD (und portmap!) für den automatischen Start einrichtet, ist von Distribution zu Distribution unterschiedlich, deshalb springe ich gleich zu den wichtigen Sachen. Denken Sie daran - in diesem Abschnitt sprechen wir über Linux, Groß-/Kleinschreibung spielt also eine Rolle.

Richten Sie zuerst die HOSTS-Datei(en) ein. Dies ist etwas komplizierter als es scheint, da es auf zwei Arten geschehen kann. Ich gehe nicht auf die Methode mit "tcpd", hosts.allow und hosts.deny ein und setze voraus, daß Sie dies so einfach wie möglich abwickeln wollen. Überzeugen Sie sich in diesem Fall davon, daß tcpd nicht automatisch gestartet wird...

Bei der Datei HOSTS (/etc/hosts) handelt es sich um die Datei für die lokale Namensauflösung - genauso wie Sie sie unter OS/2 mit dem TCP/IP-Konfigurationsnotizbuch einrichten, nur ohne die GUI. Siehe man hosts.

127.0.0.1 localhost.localdomain localhost
192.168.1.20 opus.catherders.com opus
192.168.1.2 server.catherders.com server
192.168.1.3 mwcdt.catherders.com mwcdt
192.168.1.1 gateway.catherders.com gateway

Als nächstes müssen Sie die Exportliste einrichten (/etc/exports). Die meisten vernünftigen Distributionen stellen hierfür irgendeine GUI zur Verfügung, aber hier ist die nackte Textversion.

/ (rw,no_root_squash,insecure)

Dies ist eine sehr einfach Exportdatei. Grundsätzlich steht alles im Wurzelverzeichnis und darunter (mit anderen Worten das gesamte Dateisystem) für den Schreib-/Lesezugriff zur Verfügung. Die Einstellung no_root_squash wird verwendet, um die letzten Reste des Sicherheitssystems zu beseitigen (Der Versuch, die Sicherheitssysteme von OS/2 und Linux zur Zusammenarbeit zu bewegen steht dem Versuch, Microsoft zur Zusammenarbeit mit Industriestandards zu bewegen, in nichts nach - es funktioniert nicht gut oder nicht für lange.) und insecure (das nicht so schlimm ist, wie es klingt), ist erforderlich, weil die NFS-Implementierung unter OS/2 aus der Generation 3.x stammt - siehe man exports für Details zu dieser und andern Optionen.

Überraschung - sobald Sie portmap und NFSD starten, kann es losgehen.

Fehlerbehandlung

Dasselbe wie der normalen TCP/IP-Fehlerbehandlung - mir sind keine Eigenheiten bekannt.

Teil 3 - Auf NFS-Ressourcen unter beiden Systemen zugreifen

Einbinden eines Linux-Dateisystems von OS/2 aus

Geben Sie an einer OS/2-Befehlszeile MOUNT ein, und die Syntaxhilfe wird angezeigt. Alle Standardwerte sind vernünftig, aber ich empfehle dringend, die verschiedenen Cache-Einstellungen für lokales und Zielsystem anzupassen. Wie ich oben schon erwähnt habe, können die Leistungsunterschiede erstaunlich sein. Ein einfacher Mount-Befehl kann jedoch so einfach aussehen wie:

mount -u0 -g0 p: \\opus:/

und Sie können dies in der Tat in Ihrer STARTUP.CMD-Datei plazieren.

Um die Einbindung wieder aufzuheben, benutzen Sie den Befehl UMOUNT etwa so:

umount p:

Einbinden eines OS/2-Dateisystems von Linux aus

Sie können den Mount-Befehl von der Befehlszeile aus verwenden:

mount -t nfs rechnername(aus hosts):ressource(aus exports) /pfad/zum/mountpunkt

oder Sie können Ihrer fstab-Datei Zeilen wie die folgende hinzufügen:

mwcdt:c /mnt/mwcdt/c nfs _netdev 0 0

Wobei folgende Bezeichnungen gelten:

mwc_dt
der Name des Systems
c
der Name des exportierten Dateisystems
/mnt/mwcdt/c
der Mount-Punkt, an dem die Verbindung eingebunden werden soll
nfs
der Typ des Dateisystems
_netdev
Ressource nicht einbinden bevor das Netzwerk verfügbar ist. Hinweis:Nicht alle Linux-Distributionen unterstützen _netdev. Schauen Sie in der Dokumentation nach.
0 0
für die Befehle dump und fsck

Details erhalten Sie über man fstab - schauen Sie sich die verschiedenen Cache-Einstellungsmöglichkeiten an. Ich empfehle dringend, die verschiedenen Cache-Einstellungen für lokales und Zielsystem anzupassen. Wie oben bereits erwähnt können die Leistungsunterschiede erstaunlich sein.

Zum Aufheben der Einbindung verwenden Sie den Befehl umount

umount /pfad/zum/mountpunkt

Und das wäre es in umfangreicher Kürze. Denken Sie daran, daß dieser Artikel nur als Einführung gedacht ist - für tiefergehende Details empfehle ich das IBM OS/2 Redbook SG24-4730-00 ("TCP/IP Implementation in an OS/2 Warp Environment"), "Advanced Linux Networking" von Roderick W. Smith (Copyright 2002, Pearson Education, Inc., Veröffentlicht von Addison-Wesley) und die entsprechenden man-Seiten Ihrer Linux-Distribution.

Daten und Quellen:

Mike's Notebook - unusual networking problems (and solutions) in OS/2 and eCS: http://www.catherders.com/mwclanprob.shtml


Die Website Mike's Notebook - http://www.catherders.com/mwcexp.shtml enthält eine Sammlung regelmäßig aktualisierter Artikel und Tips für OS/2-Anwender.

[Artikelverzeichnis]
editor@os2voice.org
[Vorherige Seite] [Inhaltsverzeichnis] [Nächste Seite]
VOICE Homepage: http://de.os2voice.org