Im Katalog suchen

Linux - Wegweiser für Netzwerker

Online-Version

Copyright © 2001 by O'Reilly Verlag GmbH & Co.KG

Bitte 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 für Netzwerker oder wollen Sie es bestellen, dann klicken Sie bitte hier.


vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel



Mounten eines Remote-NetWare-Volumes

IPX wird am häufigsten zum Mounten von NetWare-Volumes an das Linux-Dateisystem benutzt. Dadurch wird es möglich, Dateien von Linux und anderen Betriebssystemen gemeinsam zu nutzen. Volker Lendecke entwickelte den NCP-Client für Linux und dazu eine Sammlung von Tools, die die gemeinsame Datennutzung möglich machen.

In einer NFS-Umgebung würden wir den Befehl mount benutzen, um ein Remote-Dateisystem in Linux zu mounten. Leider stellt das NCP-Dateisystem einige besondere Anforderungen, die eine Integration in das normale mount unpraktisch machen. Statt dessen benutzen wir in Linux den Befehl ncpmount. Dieser Befehl ist eines der Tools, die in Volkers ncpfs-Paket enthalten sind, in binärer Form in den meisten modernen Distributionen angeboten werden oder als Quellcode von ftp.gwdg.de aus dem Verzeichnis /pub/linux/misc/ncpfs/ heruntergeladen werden können. Als dieses Buch geschrieben wurde, war 2.2.0 die aktuelle Version.

Bevor Sie Remote-NetWare-Volumes mounten können, müssen Sie sicherstellen, daß Ihr IPX-Netzwerk korrekt konfiguriert ist (wie bereits beschrieben). Als nächstes müssen Sie die Login-Details für den NetWare-Server kennen, den Sie mounten wollen; dazu gehören die Benutzer-ID und das Paßwort. Schließlich müssen Sie noch wissen, welches Volume Sie mounten wollen und an welches lokale Verzeichnis Sie es mounten wollen.

Ein einfaches Beispiel für ncpmount

Ein einfaches Beispiel einer ncpmount-Anwendung sieht etwa so aus:

# ncpmount -S ALES_F1 -U rick -P d00-b-gud /mnt/brewery
Diese Anweisung mountet alle Volumes des Dateiservers ALES_F1 im Verzeichnis /mnt/brewery. Für das NetWare-Login wird der Benutzername rick und das Paßwort d00-b-gud verwendet.

Der ncpmount-Befehl ist normalerweise auf Setuid root gesetzt und kann daher von jedem Linux-Anwender benutzt werden. Standardmäßig ist nur dieser Anwender Eigentümer der Verbindung, und nur er oder root können das gemountete Volume wieder abtrennen.

NetWare verwendet den Begriff Volume, was analog zu einem Dateisystem in Linux ist. Ein NetWare-Volume ist die logische Repräsentation eines NetWare-Dateisystems. Dabei kann es sich um eine einzelne logische Festplatten-Partition handeln, die über mehrere physikalische Partitionen verteilt ist.Standardmäßig sieht der NCPFS-Support von Linux die Volumes als Unterverzeichnisse eines umfassenderen logischen Dateisystems an, das durch den ganzen Dateiserver repräsentiert wird. Der Befehl ncpmount bewirkt, daß jedes der NetWare-Volumes eines gemounteten Dateiservers als Unterverzeichnis unterhalb des Mount-Punktes erscheint. Das ist ganz praktisch wenn Sie auf den gesamten Server zugreifen wollen. Aus komplizierten technischen Gründen können Sie allerdings diese Verzeichnisse nicht mit NFS reexportieren, wenn Sie das vorhaben sollten. Wie man dieses Problem umgeht, zeigen wir in Kürze anhand einer etwas aufwendigeren Alternative.

Der Befehl ncpmount im Detail

Der Befehl ncpmount kennt eine Vielzahl von Kommandozeilenoptionen, die Ihnen viele Möglichkeiten geben, Ihre NCP-Mounts zu verwalten. Die wichtigsten Optionen werden in Tabelle 15.2 beschrieben.

Tabelle 15.2: Optionen von ncpmount

Argument Beschreibung

–S server

Der Name des Dateiservers, der gemountet werden soll.

–U user_name

Die NetWare-Benutzer-ID für das Login in den Dateiserver.

–P password

Das Paßwort für den NetWare-Server-Login.

–n

Diese Option muß für NetWare-Logins angegeben werden, für die kein Paßwort erforderlich ist.

–C

Diese Option verhindert die automatische Umwandlung der Paßwörter in Großbuchstaben.

–c client_name

Mit dieser Option geben Sie an, wer der Eigentümer der Verbindung zum Dateiserver ist. Das ist nützlich zum Drucken in NetWare. Darauf gehen wir später noch im Detail ein.

–u uid

Die Linux-Benutzer-ID, die als Eigentümer der Dateien im gemounteten Verzeichnis angezeigt werden soll. Ist diese Option nicht angegeben, wird die ID des Benutzers genommen, der den ncpmount-Befehl ausführt.

–g gid

Die Linux-Gruppen-ID, die als Eigentümer der Dateien im gemounteten Verzeichnis angezeigt werden soll. Ist diese Option nicht angegeben, wird die Gruppen-ID des Benutzers genommen, der den ncpmount-Befehl ausführt.

–f file_mode

Mit dieser Option stellen Sie die Dateiattribute (Zugriffsrechte) ein, die die Dateien im gemounteten Verzeichnis haben sollen. Der Wert sollte oktal angegeben werden, z.B. 0664. Die tatsächlichen Dateiattribute ergeben sich aus der maskierten Verknüpfung der Attribute dieser Option mit denjenigen Dateiattributen, die für die Dateiserver-Dateien der NetWare-Benutzer-ID angegeben sind. Sie müssen also sowohl Zugriffsrechte auf dem Server haben als auch Rechte, die von dieser Option festgelegt werden, um auf eine NetWare-Datei zugreifen zu können. Die Standardvorgabe wird von der aktuellen umask abgeleitet.

–d dir_mode

Mit dieser Option spezifizieren Sie Zugriffsrechte auf Unterverzeichnisse des gemounteten Verzeichnisses. Sie verhält sich genauso wie die Option –f, mit der Ausnahme, daß die Standard-Zugriffsrechte von der aktuellen umask abgeleitet werden. Wo Leserecht gewährt wird, liegt auch Ausführungsrecht vor.

–V volume

Diese Option gibt den Namen eines einzelnen NetWare-Volumes an, das unter dem Mount-Punkt gemountet werden soll. Es werden somit nicht automatisch alle Volumes des Zielservers gemountet. Diese Option muß angegeben werden, wenn Sie ein gemountetes NetWare-Volume über NFS wieder exportieren wollen.

–t time_out

Mit dieser Option geben Sie die Timeout-Zeit an, die der NCPFS-Client warten soll, bis er eine Antwort vom Server erhält. Der Timeout-Wert wird in Hundertstelsekunden angegeben und beträgt standardmäßig 60 ms. Wenn Sie bei NCP-Mounts irgendwelche Stabilitätsprobleme feststellen, sollten Sie es noch mal mit höheren Timeout-Werten probieren.

–r retry_count

Der NCP-Client-Code versucht, Datagramme mehrmals zum Server zu senden, bevor er die Verbindung als getrennt ansieht. Die Anzahl der Wiederholungsversuche (standardmäßig 5) stellen Sie mit dieser Option ein.

Wie Sie Ihr NetWare-Login-Paßwort verstecken

Es ist ziemlich riskant, das Paßwort in der Kommandozeile einzugeben, wie wir das beim ncpmount-Befehl gemacht haben. Andere gleichzeitig aktive Benutzer könnten das Paßwort zu Gesicht bekommen, wenn sie Programme wie top oder ps benutzen. Um solche Sicherheitslücken zu vermeiden, kann ncpmount bestimmte Details auch aus einer Datei im Home-Verzeichnis des Benutzers auslesen. In dieser Datei gibt der Benutzer den Login-Namen und das Paßwort für jeden Dateiserver an, den er mounten will. Diese Datei ist ~/.nwclient und muß auf Zugriffsrecht 0600 eingestellt sein, um sicherzustellen, daß andere Benutzer sie nicht lesen können. Sind die Zugriffsrechte nicht korrekt eingestellt, weigert sich ncpmount, die Datei zu benutzen.

Die Datei hat eine sehr einfache Syntax. Jede Zeile, die mit einem # beginnt, wird als Kommentar aufgefaßt und ignoriert. Die anderen Zeilen haben folgende Syntax:

fileserver/userid password
fileserver ist der Name des Dateiservers, der die Volumes enthält, die Sie mounten wollen. userid bezeichnet den Login-Namen Ihres Benutzerkontos auf diesem Server. Das Feld password ist optional. Wenn es nicht angegeben ist, fragt ncpmount die Benutzer nach dem Paßwort, wenn sie einen Mount-Versuch unternehmen. Wird im password das Zeichen – angegeben, wird kein Paßwort benutzt; das ist äquivalent zur Option –n.

Sie können beliebig viele Einträge angeben, das Dateiserver-Feld muß aber eindeutig sein. Der erste Dateiserver-Eintrag hat eine besondere Bedeutung. ncpmount benutzt die Option –S, um zu ermitteln, welcher Eintrag in ~/.nwclient benutzt werden soll. Ist kein Server in der Option –S angegeben, wird der erste Servereintrag in ~/.nwclient als Ihr bevorzugter Server genommen. Sie sollten den Server, den Sie am häufigsten mounten, in der Datei an die erste Stelle setzen.

Ein etwas aufwendigeres Beispiel mit ncpmount

Lassen Sie uns ein etwas komplizierteres Beispiel für ncpmount betrachten, in dem einige der eben besprochenen Features auftauchen. Als erstes erzeugen wir eine einfache ~/.nwclient-Datei:

# NetWare-Login-Details für die virtuelle Brauerei und Winzerei 
# 
# Brauerei-Login 
ALES_F1/MATT staoic1 
# 
# Winzerei-Login 
REDS01/MATT staoic1 
#
Stellen Sie sicher, daß die Zugriffsrechte korrekt gesetzt sind:
$ chmod 600 ~/.nwclient

Nun mounten wir ein Volume vom Server der Winzerei in ein Unterverzeichnis eines gemeinsam genutzten Verzeichnisses. Dabei setzen wir die Datei- und Verzeichnis-Zugriffsrechte so, daß andere Benutzer von dort aus auf gemeinsame Daten zugreifen können.

$ ncpmount -S REDS01 -V RESEARCH -f 0664 -d 0775 /usr/share/winery/data/
Diese Anweisung bewirkt in Kombination mit der oben erwähnten Datei ~/.nwclient, daß das Volume RESEARCH des Servers REDS01 in das Verzeichnis /usr/share/winery/data/ gemountet wird, wobei MATT als NetWare-Benutzer-ID genommen und das Paßwort aus der Datei ~/.nwclient gelesen wird. Die Zugriffsrechte der gemounteten Dateien sind 0664, und die Zugriffsrechte des Verzeichnisses sind 0775.





vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel


Weitere Informationen zum Linux - Wegweiser für Netzwerker

Weitere Online-Bücher & Probekapitel finden Sie in unserem Online Book Center


O'Reilly Home|O'Reilly-Partnerbuchhandlungen|Bestellinformationen
Kontakt|Über O'Reilly|Datenschutz

© 2001, O'Reilly Verlag