# Der User Space NFS Server

Neue Distributionen installieren per Voreinstellung nur den neueren Kernel-NFS-Dämon. Ob das Paket installiert ist, lässt sich leicht anhand der Existenz typischer Programme überprüfen:

`user@sonne> locate rpc.nfsd /usr/man/man8/rpc.nfsd.8.gz /usr/sbin/rpc.nfsd`

Findet `locate` das Programm `rpc.nfsd` nicht, dann muss das korrekte Paket (nfsserv.rpm bei SuSE) erst installiert werden.

# Den Server einrichten

- Da es sich beim Network File System um einen RPC-Dienst handelt, muss der Portmapper aktiv sein. Wir suchen den entsprechenden Prozess in der Prozesstabelle:

  `user@sonne> ps ax | grep portmap 85 ? S 0:00 /sbin/portmap`

Findet `grep` den Prozess nicht, ist dieser von Hand zu starten.
Auf manchen Systemen heißt das entsprechende Programm `portmapper` oder `rpc.portmap`.

- Der NFS-Dämon muss aktiv sein:

  `user@sonne> ps ax | grep rpc.nfsd 91 ? S 0:00 /usr/sbin/rpc.nfsd`

- Der Mount-Dämon muss aktiv sein:

  `user@sonne> ps ax | grep rpc.mountd 89 ? S 0:00 /usr/sbin/rpc.mountd`

- Wurden Änderungen in `/etc/exports` vorgenommen, müssen diese bekanntgegeben werden:

  `root@sonne> killall -HUP rpc.mountd root@sonne> killall -HUP rpc.nfsd`

Hat man alle Dämonen gestartet, kann die Installation getestet werden:

`user@sonne> rpcinfo -p Program Vers Proto Port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 607 mountd 100005 2 udp 607 mountd 100005 1 tcp 610 mountd 100005 2 tcp 610 mountd 100003 2 udp 2049 nfs 100003 2 tcp 2049 nfs`

# Häufige Fehlerursachen

Alle Fehlerquellen erschöpfend darzustellen, gliche dem Vorhersagen der nächsten Lottozahlen. Aber einige Fehler erscheinen immer wieder...:

- Beim Start der Dämons erscheint folgende Meldung:

  `root@sonne> rpc.nfsd Kann den Service nicht registrieren: RPC: Kann nicht empfangen; errno = Verbindungsaufbau abgelehnt`

  Mit großer Wahrscheinlichkeit ist der Portmapper nicht aktiv.

- Der Portmapper selbst lässt sich nicht starten... dann wurde vermutlich der `inetd` noch nicht aktiviert.

- Sowohl Portmapper als auch der `inetd` sind aktiv, dennoch schlägt der Startversuch des `rpc.nfsd` fehl... Die Ursachen sind vielschichtig. Erster Anlaufpunkt sollte ein Blick in die Datei `/var/log/messages` sein:

  `root@sonne> tail /var/log/messages | grep nfsd Apr 1 15:15:31 sonne nfsd[1758]: Could not bind UDP socket to 0.0.0.0:2049: Die Adresse wird bereits verwendet`

  Offensichtlich ist der Port 2049 schon belegt. Dieses Problem taucht vor allem in Verbindung mit dem Kernel NFS Dämon auf, der bei Beendigung - sei es gewollt oder durch Absturz - den Port in einigen Fällen nicht wieder frei gibt. Wohl einziger Ausweg ist hier der Neustart des `inetd`.