![]() ![]() ![]() |
![]() ![]() |
Noch steht die Entwicklung des NFS-Kernel-Dämons am Anfang... fehlende Eigenschaften sind:
Zum Lieferumfang des Kernel-Dämons gehören eine Vielzahl von Werkzeugen
(meist liegen diese Programme unter /usr/sbin
):
/usr/sbin/kexportfs
Die Tabelle der zu exportierenden Verzeichnisse wird
in der Datei /var/lib/nfs/etab
gehalten (Laut Manual Pages soll die Datei xtab
heißen; in der mir vorliegenden Version wird oben genannte Datei von kexportfs
angelegt.). Diese Tabelle wird bei einer Mount-Anforderung vom
mountd
gelesen. kexportfs
synchronisiert u.a. diese Datei mit der
/etc/exports
. Das Programm kann auch benutzt werden, um ein Verzeichnis zu exportieren, ohne
einen entsprechenden Eintrag in /etc/exports
vornehmen zu müssen./usr/sbin/knfsstat
Gibt Statistiken zum Kernel-NFS aus./usr/sbin/knhfsstone
Ein Programm zum Test der Performance der NFS-Operationen./usr/sbin/kshowmount
Zeigt auf dem Server die aktuell von Clients importierten Verzeichnisse an./usr/sbin/rpc.klockd
Zum Sperren von Dateien über NFS (die Implementierung ist noch
unvollständig)./usr/sbin/rpc.kmountd
Wartet auf Mount-Anforderungen, überprüft deren
Berechtigung und liefert - falls die Rechte gesetzt sind - ein Handle auf das angeforderte Verzeichnis./usr/sbin/rpc.knfsd
Dieser Dämon erledigt die eigentlichen Schreib- und Leseanforderungen. Im
Unterschied zum User-Level-NFS können mehrere Threads des Dämons gestartet werden./usr/sbin/rpc.krquotad
Setzt die Quotas ("Wieviel Plattenspeicher steht dem Nutzer zu?") auf einem
NFS-Dateisystem um./usr/sbin/rpc.kstatd
Eine (noch unvollständige) Implementierung des MSN (Network Status
Monitor). Dieser Dämon wird vom klogd
benötigt und soll das Datei-Recovery
(Wiederherstellung) nach einem Server-Absturz ermöglichen.Da einige der Programme nur einen Bruchteil der vorgesehen Funktionalität offerieren, werden wir nur einen "minimalen" NFS-Server starten (ohne Datei-Recovery, ohne Quotas...):
Wer auf das automatische Laden von Modulen durch den Kernel verzichtet, der muss zunächst das Modul per Hand laden:
root@sonne> modprobe nfsd root@sonne> lsmod Module Size Used by nfsd 145324 0 (unused) parport_pc 5748 0 (unused) parport 6716 0 [vmppuser parport_pc] rtl8139 12320 1 (autoclean) serial 42932 1 (autoclean) memstat 1604 0 (unused) nls_iso8859-1 2236 1 (autoclean)
Der Portmapper muss aktiv sein:
root@sonne> ps ax | grep portmap && /sbin/portmap
Der für die Mount-Anforderungen zuständige Dämon muss gestartet werden:
root@sonne> ps ax | grep mountd && /usr/sbin/rpc.kmountd
Je nach Version des Programmes und des knfsd
kann es notwendig sein, die Option
--no-nfs-version 3
zu verwenden, um Unstimmigkeiten zwischen altem und neuem
Protokoll zu vermeiden.
Der Nutzer-Teil des NFS-Server-Prozesses muss gestartet werden (im Wesentlichen startet dieses Programm nur die spezifizierte Anzahl an Kernel-Threads):
# ein einziger Thread root@sonne> ps ax | grep nfsd && /usr/sbin/rpc.knfsd # 8 Threads root@sonne> /usr/sbin/rpc.knfsd 8 # Verwendung des Ports 1111 anstatt 2049 root@sonne> /usr/sbin/rpc.knfsd -p 1111
Nun ist noch die Datei /var/lib/nfs/etab
zu erzeugen:
root@sonne> /usr/sbin/kexportfs -a
Nach einer Modifizierung der Datei /etc/exports
sind nun nicht mehr die
Dämons zu verständigen, sondern nur die Tabelle zu erneuern (in manchen Versionen hilft leider
nur der Neustart des Moduls):
root@sonne> /usr/sbin/kexportfs -r
![]() ![]() ![]() |
![]() ![]() |