How To – einen NFS Server und Client auf einem Ubuntu 10.04 aufsetzen

Version 1.0

Autor: Falko Timme <ft [at] falkotimme [dot] com>

[1] Folge mir auf Twitter [2]

Diese Anleitung erklärt wie man einen NFS Server und Client auf einem Ubuntu 10.04 Betriebssystem aufsetzt. NFS steht für Network File System; über NFS  kann ein Client auf eine entfernte Freigabe zugreifen (lesen und schreiben), als ob es die lokale Festplatte wäre. Man greift damit auf ein (freigegebenes) Laufwerk zu, zum Beispiel um Daten zu teilen und zu verwalten.

Diese Anleitung kommt ohne Gewähr!

1 Vorbemerkung

Ich benutze hier zwei Ubuntu Systeme:

  • NFS Server: server.example.com, IP Adresse: 192.168.0.100
  • NFS Client: client.example.com, IP Adresse: 192.168.0.101

Wir müssen als root eingeloggt sein um die Anleitung auszuführen. Wir können entweder alle Befehle mit sudo vorweg eingeben, oder loggen uns gleich als root ein.

sudo su

2 Installation NFS

Server:

Wir führen auf dem NFS Server nun aus:

aptitude install nfs-kernel-server nfs-common portmap

Client:

Auf dem Client installieren wir NFS folgendermaßen:

aptitude install nfs-common portmap

3 Verzeichnisse auf dem Server exportieren

Server:

Ich würde gerne  /home und /var/nfs für den Client zugänglich machen, hierfür müssen wie sie auf dem Server „exportieren“.

Wenn ein Client eine NFS Freigabe nutzt, passiert dies normalerweise als der Benutzer nobody. Normalerweise gehört das Verzeichnis  /home nicht   nobody (und ich empfehle das auch nicht zu ändern!), und da wir jedoch sowohl lesen als auch auf  /home schreiben wollen, geben wir für NFS an dass der Zugang als root geschieht, was nicht nötig wäre wenn Deine /home Freigabe nicht nur read-only wäre. Das Verzeichnis /var/nfs existiert noch nicht, also erstellen wir es und ändern den Besitz auf nobody und nogroup:

mkdir /var/nfs

chown nobody:nogroup /var/nfs

Nun müssen wir  /etc/exports verändern, hier „exportieren“ wir quasi die NFS Freigabe. Wir spezifizieren  /home und /var/nfs als NFS Freigaben und teilen NFS mit einen Zugang zu  /home als root zu ermöglichen (um mehr über /etc/exports zu erfahren, über Formate und Optionen, schau Dir dieses an):

man 5 exports

vi /etc/exports

# /etc/exports: the access control list for filesystems which may be exported
#               to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/home           192.168.0.101(rw,sync,no_root_squash,no_subtree_check)
/var/nfs        192.168.0.101(rw,sync,no_subtree_check)

(Die no_root_squash Option ermöglicht es dass der Zugriff auf /home als root passiert.)

Jedes Mal wenn wir /etc/exports verändern, müssen wir Folgendes ausführen:

exportfs -a

…um die Änderungen durchzuführen.

Das könnte dich auch interessieren …