Netzwerke:NFS - Network File System

Aus ITWiki
Zur Navigation springen Zur Suche springen
Nfs bild1.png

1 Verwendungszweck für unser Netzwerk

1. Zentralisierte Homeverzeichnisse

  • Benutzer können sich von jedem Client aus mit ihrem Profil verbinden
  • Nach beenden der Sitzung sind die Daten zentral auf dem Server gespeichert


2. Ein eigenes APT-Repository

  • Zentrales Archiv für eigene Software-Pakete
  • Einmal heruntergeladen, stehen diese allen Clients zentral auf dem NFS_Server zur verfügung

2 Was ist NFS


  • Ein Netzwerk-Protokoll um Dateien über das lokale Netzwerk auszutauschen.
  • Es gilt als der Netzwerk-Filesystem-Standard in Unix-Umgebungen.
  • NFS ist im Prinzip das UNIX-Gegenstück zu SMB aus der Windows-Welt.


3 NFS-Server einrichten

In diesem Beispiel ist die IP Adresse unseres NFS Server ist: 10.10.0.5

1.Paket installieren

#apt install nfs-kernel-server

2.Datei für die Freigabe anlegen und bearbeiten

# vi /etc/exports
/home *(rw,async,no_subtree_check)
/srv/local-apt-reposirtory *(ro,async,all_squash,no_subtree_check)

Danach speichern(Esc, :wq)

3. Erstellen einen Benutzer für jeder Benutzer Ihres Netzwerks auf den NFS Server

#adduser <username>

4.Wechsel das Eigentum und die Zugehörigkeit von die Verzeichnisse der neuen Benutzer in Home Verzeichnis z.B (Benutzer: ammar)

#chown ammar.ammar /home/ammar


4.Nach Bearbeiten der Exports-Datei, muss die Dataei eingelesen werden.

#exportfs -ra

5.Freigaben des Servers anzeigen lassen

#exportfs -v

4 Freigabe Optionen

Optionen Beschreibung
rw Lesen und Schreiben
ro nur Lesen
async Leistungsverbesserung durch Nutzung des Schreib-Cache
all_squash Ordnet alle UserIDs dem Nutzer anonymous zu
no_subtree_check kein Überprüfung von Unterverzeichnisbäumen

5 NFSv4-Client einrichten

5.1 NFS-Client installieren

# apt install nfs-common

5.2 Anpassen der Benutzerdatenbank

5.2.1 Manuelles Mounten des Fileservers

# mount 10.10.0.5:/home/xy /mnt

5.2.2 Mount persistent machen

In fstab datei schreiben:

#vi /etc/fstab 
10.10.0.5:/home /home nfs rw,async,soft 0 0

5.2.3 Alles mounten

# mount -a

5.2.4 Mount testen

# mount | grep home

5.2.5 Neu starten

# systemctl reboot

6 Paket installieren

nfs-common

Mountpoint für die Freigabe des NFS-Servers

mkdir /srv/local-apt-repository

Freigabe einhängen

mount fileserver:/srv/local-apt-repository/ /srv/local-apt-repository/

Mount der Freigabe in die fstab eintragen

fileserver:/srv/local-apt-repository    /srv/local-apt-repository       nfs     nfsvers=4,rw, 0 0

7 Clientseitige Optionen

rw Lese- und Schreibrechte
ro Nur Leserechte
hard Ist der Server nicht erreichbar, würde der Dateimanager einfrieren und warten bis er wieder erreichbar ist
soft Bei Unterbrechungen sofort einen Timeout machen (verhindert ein Einfrieren des Dateimanagers)
intr Erlaubt einem wartenden Programm, bei Bedarf dennoch zu unterbrechen oder abzubrechen
rsize=8192,wsize=8192 Legt die Blockgröße der zu übertragenen Daten fest
_netdev weist das System an, solange mit dem mounten zu warten, bis das Netzwerk erreichbar ist

8 Problembehebung

  • Bei Firewall-Freigaben muss NFS-Port 2049 freigegeben werden
  • Ein beliebter Fehler entsteht durch falsch vergebene Rechte im eingebundenen Dateisystem.
  • Fehlermeldungen zeigt die Datei /var/log/daemon.log