• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Client findet NFS Freigaben nicht

Hallo,
ich habe auf meinem Rechner einen NFS Server mit YAST konfiguriert und das Verzeichnis /windows/D/share freigegeben.
Der entsprechende Firewall Port ist geöffnet, auf dem Client scheint das auch zu funktionieren:

Code:
athlon1800:/home/ingo # showmount -e athlon1800
Export list for athlon1800:
/windows/D/share 192.168.xxx.22
athlon1800:/home/ingo #

In der /etc/exports steht:
Code:
/windows/D/share	192.168.xxx.22(rw,root_squash,sync,subtree_check)

Nun wollte ich an einem anderen Rechner (192.168.xxx.20) der über fritz.box router mit dem Server verbunden ist mittels nfsclient (YAST) das vom Server exportierte Verzeichnis importieren, ich erhalte jedoch selbst bei Eingabe der richtigen IP des Server-Rechners immer nur leere Listen.
Der NFS Server lässt sich zwar aber über
Code:
ping 192.168.xxx.22
korrekt anpingen, aber selbst wenn ich in /etc/fstab des clients
manuell die Zeile
Code:
192.168.xxx.22:/windows/D/share /mnt/share nfs rw,noauto 0 0
eintrage lässt sich das Verzeichnis nicht mounten. ("mnt/share" ist ein existierendes Verzeichnis auf dem Client)

Verschiedene Howtos schreiben noch was von "portmap" welcher laufen sollte, in der Suse Referenz steht dazu aber nichts.
Jedenfalls komme ich nicht weiter. Kann es sein, dass ich richtig konfiguriert habe, aber ich an einem banalen Netzwerkproblem
(DNS Konfig, Routing) scheitere?
 
Hallo Stephan,
nette Idee, aber wie soll ich muit WIN auf ext schreiben? Außerdem glaube ich, daß der "Bock" tiefer liegt.
Ich sehe nämlich, daß der (in allen Howtos erwähnte) portmap deamon nicht läuft, weil eine Adresse belegt ist.
Code:
athlon1800:/home/ingo # portmap start -d
portmap[4722]: cannot bind udp: Address already in use
athlon1800:/home/ingo #
Werde also nun mal klären müssen, welche Adresse belegt ist und wie das mit udp zusammenhängt. Allerdings schwimme ich hier ziemlich
und braucghe Hacker-Hilfe.
Ach ja: Kann es sein daß bei Suse 11.1 da irgendwie wieder mal was anders läuft? :schockiert:
 

pft

Advanced Hacker
also für nfs v3 und bis Suse 10.2 muss portmap laufen. NFS v4 und Suse 11.1 kenne ich noch nicht im Detail.

Versuche doch mal herauszufinden wer den Port blockiert und warum, z.B. mit "rpcinfo -p". Daynn evtl. dieses Programm beenden, portmap starten und das Programm dann versuchen neu zu starten.

FAT ist normalerweise kein Hindernis, da hier überhaupt nicht relevant: wenn FAT nicht unterstützt würde könnest Du auch lokal nicht mounten und drauf zugreifen. Kannst Du es aber mounten (Voraussetzung für export), kommt FAT remote nicht mehr zum tragen, da der Remote-PC das Dateisystem "NFS" sieht.
 
Hallo pft,

ich habe mal die Zeile eingetippt:

Code:
athlon1800:/etc # rpcinfo -p athlon1800
   program vers proto   port  service
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100005    1   udp  37530  mountd
    100005    1   tcp  41811  mountd
    100005    2   udp  37530  mountd
    100005    2   tcp  41811  mountd
    100005    3   udp  37530  mountd
    100005    3   tcp  41811  mountd
    100024    1   udp  49349  status
    100024    1   tcp  44630  status
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100021    1   udp  52970  nlockmgr
    100021    3   udp  52970  nlockmgr
    100021    4   udp  52970  nlockmgr
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100021    1   tcp  37305  nlockmgr
    100021    3   tcp  37305  nlockmgr
    100021    4   tcp  37305  nlockmgr
athlon1800:/etc #
Der Portmapper scheint also zu laufen.

Die /etc/hosts.allow sieht so aus:
Code:
smb : ALL
cups : ALL
lprng : ALL
nfs-server : ALL
nfs-utils : ALL
portmap : 192.168.178.20 192.168.178.22

xinetd läuft und printers ist aktiviert.
nfsserver ist konfiguriert und in den runlevel Diensten laufen nfs, nfsserver, cups.
Cups habe ich so konfiguriert, daß es die Warteschlange im gesamten LAN broadcastet, und habe
testweise auch mal allen hosts im LAN den Zugriff gestattet.

Leider kriege ich am client immer leere Auswahllisten, der Servername "athlon1800" wird zwar akzeptiert,
aber die Auswahlliste der exportierten Verzeicnisse bleibt leer.

Ich habe nun auch noch Samba aktiviert. (laur SusE dürfen Samba und NFS parallel laufen)
Komischerweise kann ich hier das Share volume mittels smb über smb://athlon1800/share lesen und schreiben.
Auch die Druckerwarteschlange wird gefunden, aber druckt trotzdem nicht.

Ich bin im Moment mit meinem Latein am Ende, suche aber weiter.
 

admine

Ultimate Guru
Evt. könnte dir das helfen:
hide, nohide
Exportiert der Server ein Verzeichnis, in dem wiederum ein anderes Dateisystem gemeountet ist, so wird dieses nicht an einen Client exportiert (»hide«, Voreinstellung). Dies bedeutet allerdings, dass die Dateisysteme weiterhin alle einzeln auf der Server-Seite exportiert werden müssen jedoch nicht alle expliziet auf der Client gemountet werden müssen. Die »nohide«-Option (also den impliziten Export) funktioniert jedoch nur, wenn es sich bei der Clientangabe um einen Rechnernamen (keine Wildcards, IP-Netzwerke und Netzgruppen!) handelt.

Siehe auch "man exports".
 
Hallo,
danke für den Hinweis!
Nur noch eine kurze Rückfrage: ist das so zu verstehen, daß wenn mein /windows/D bereits im Server
gemountet ist, ich das /windows/D/share in /etc/exports explizit für den Client (und zwar für den hostnamen des clients, nicht für seine IP) exportieren muss? Dann wäre auf einmal eine Logik drin. Ich probiere es jetzt mal!
 

admine

Ultimate Guru
ingo.trautwein schrieb:
ist das so zu verstehen, daß wenn mein /windows/D bereits im Server
gemountet ist, ich das /windows/D/share in /etc/exports explizit für den Client (und zwar für den hostnamen des clients, nicht für seine IP) exportieren muss?
Genau.
 

pft

Advanced Hacker
Also zu deinem Portmapper: der muss auch auch auf dem Client laufen, die Prüfung auf athlon1800 (das war doch der Server, oder) reicht nicht!

zu dem hide/nohide: hier liegt evtl. ein Missverständnis vor.
Wenn auf dem Server ein Laufwerk auf /windows/D gemountet ist wie ich vermute, dann sollte es mit dem export von "/windows/D" oder "/windows/D/share" keine Probleme geben. Der Hinweis trifft dann, wenn Du nur "/windows" exportierst, dann wäre "/windows/D" nicht sichtbar, bzw. wenn Du /Windows/D exportierst und auf "/windows/D/share" nochmal was anderes gemountet ist. admine bitte korrigiere mich wenn ich falsch liege :)


EDIT:
noch etwas.
1. den ganzen Kram mit cups, samba etc lass hier bitte weg Du verwirrst uns und vermutlich auch Dich selbst. Das hat doch mit nfs nichts zu tun
2. warum fummelst Du an der etc/hosts.allow herum bevor es überhaupt geht? Wenn schon dann mach es richtig: der nfs-server (kernel nfs server) hört laut der Kommentare in meiner hosts.allow auf die tokens "mountd" und "statd". Hier "nfs-server" einzugeben dürfte eher nutzlos sein. Besser Du lässt die hosts.allow erst mal leer bis es geht: Alte admin Regel: erst mal die Funktion sicherstellen und erst dann die Rechte kontrollieren.
 

admine

Ultimate Guru
pft schrieb:
admine bitte korrigiere mich wenn ich falsch liege :)
Sorry, aber da muss ich eher passen.
Selbst hatte ich diese Konstellation noch nie ... kann mich nur erinnern, dass wir vor etwas längerer Zeit schon mal eine solche Diskussion hier hatten.
:roll:

Gruß admine,
die sich hier jetzt besser raushält :eek:ps:
 
Oben