NFS (Network File System) wurde 1980 von Sun Microsystems für die gemeinsame Nutzung von Dateien und Ordnern zwischen Linux/Unix-Systemen entwickelt. Sie können Ihre lokalen Dateisysteme über ein Netzwerk und Remote-Hosts bereitstellen, um mit ihnen zu interagieren, wenn sie lokal auf demselben System bereitgestellt werden. Mit Hilfe von NFS können wir die Dateifreigabe zwischen Unix-zu-Linux-System und Linux-zu-Unix-System einrichten.,
Vorteile von NFS
- NFS ermöglicht den lokalen Zugriff auf remote-Dateien.
- Es verwendet eine Standard-Client / Server-Architektur für die Dateifreigabe zwischen allen *nix-basierten Computern.
- Bei NFS ist es nicht notwendig, dass beide Rechner auf demselben Betriebssystem laufen.
- Mit Hilfe von NFS können wir zentrale Speicherlösungen konfigurieren.
- Benutzer erhalten ihre Daten unabhängig vom physischen Standort.
- Keine manuelle Aktualisierung für neue Dateien erforderlich.,
- Neuere version von NFS unterstützt auch acl, pseudo-root-mounts.
- Kann mit Firewalls und Kerberos gesichert werden.
NFS-Dienste
Es ist ein System-V-gestarteter Dienst. Das NFS Server-Paket enthält drei Funktionen, die in den Paketen portmap und nfs-utils enthalten sind.
- portmap: Es ordnet Aufrufe von anderen Computern dem richtigen RPC-Dienst zu (bei NFSv4 nicht erforderlich).
- nfs: Es übersetzt Remote – Dateifreigabeanforderungen in Anforderungen auf dem lokalen Dateisystem.
- rpc.mountd: Dieser Dienst ist für das Mounten und Aushängen von Dateisystemen verantwortlich.,
Wichtige Dateien für die NFS-Konfiguration
- / etc / exports: Es ist eine Hauptkonfigurationsdatei von NFS, alle exportierten Dateien und Verzeichnisse sind in dieser Datei am Ende des NFS-Servers definiert.
- / etc /fstab : Um ein NFS-Verzeichnis auf Ihrem System über die Neustarts zu mounten, müssen wir einen Eintrag in/etc / fstab machen.
- / etc/sysconfig / nfs : Konfigurationsdatei von NFS zur Steuerung des Ports, den rpc und andere Dienste abhören.
Einrichten und Konfigurieren von NFS-Mounts auf Linux-Server
Um NFS-Mounts einzurichten, benötigen wir mindestens zwei Linux / Unix-Maschinen., Hier in diesem Tutorial verwende ich zwei Server.
- NFS Server: nfsserver.example.com mit IP-192.168.0.100
- NFS Client : nfsclient.example.com mit IP-192.168.0.101
Installation von NFS Server und NFS Client
müssen wir NFS Pakete sowohl auf unserem NFS Server als auch auf dem NFS Client Rechner installieren. Wir können es über „yum“ (Red Hat Linux) und „apt-get“ (Debian und Ubuntu) Paketinstallateure installieren.
# yum install nfs-utils nfs-utils-lib# yum install portmap (not required with NFSv4)
Starten Sie nun die Dienste auf beiden Rechnern.,
Nach der Installation von Paketen und dem Starten von Diensten auf beiden Computern müssen beide Computer für die Dateifreigabe konfiguriert werden.
Einrichten des NFS-Servers
Zunächst konfigurieren wir den NFS-Server.
Exportverzeichnis konfigurieren
Um ein Verzeichnis mit NFS zu teilen, müssen wir einen Eintrag in der Konfigurationsdatei „/etc/exports“ vornehmen. Hier werde ich ein neues Verzeichnis namens „nfsshare“ in „/“ Partition erstellen, um es für den Clientserver freizugeben, Sie können auch ein bereits vorhandenes Verzeichnis für NFS freigeben.,
# mkdir /nfsshare
Jetzt müssen wir einen Eintrag in“ /etc/exports “ machen und die Dienste neu starten, um unser Verzeichnis im Netzwerk gemeinsam nutzbar zu machen.
# vi /etc/exports/nfsshare 192.168.0.101(rw,sync,no_root_squash)
Im obigen Beispiel gibt es ein Verzeichnis in / Partition mit dem Namen“ nfsshare „wird mit der Client-IP“ 192.168.0.101 “ mit Lese-und Schreibberechtigung (rw) geteilt, Sie können auch den Hostnamen des Clients anstelle der IP im obigen Beispiel verwenden.
NFS-Optionen
Einige andere Optionen, die wir in der Datei „/etc/exports“ für die Dateifreigabe verwenden können, lauten wie folgt.,
- ro: Mit Hilfe dieser Option können wir schreibgeschützten Zugriff auf die freigegebenen Dateien bieten, dh der Client kann nur lesen.
- rw: Mit dieser Option kann der Clientserver sowohl Lese-als auch Schreibzugriff innerhalb des freigegebenen Verzeichnisses haben.
- sync: Sync bestätigt Anfragen an das freigegebene Verzeichnis erst, wenn die Änderungen festgeschrieben wurden.
- no_subtree_check: Diese Option verhindert die Überprüfung des Teilbaums. Wenn ein freigegebenes Verzeichnis das Unterverzeichnis eines größeren Dateisystems ist, führt nfs Scans jedes Verzeichnisses darüber durch, um seine Berechtigungen und Details zu überprüfen., Das Deaktivieren der Teilbaumprüfung kann die Zuverlässigkeit von NFS erhöhen, aber die Sicherheit verringern.
- no_root_squash: Mit diesem Satz kann root eine Verbindung zum angegebenen Verzeichnis herstellen.
Für weitere Optionen mit „/ etc / exports“ wird empfohlen, die Manpages für den Export zu lesen.
Einrichten des NFS-Clients
Nach der Konfiguration des NFS-Servers müssen wir dieses freigegebene Verzeichnis oder diese freigegebene Partition auf dem Clientserver bereitstellen.
Freigegebene Verzeichnisse auf NFS-Client mounten
Jetzt müssen wir am Ende des NFS-Clients dieses Verzeichnis auf unserem Server mounten, um lokal darauf zugreifen zu können., Dazu müssen wir zuerst herausfinden, dass Freigaben auf dem Remote-Server oder NFS-Server verfügbar sind.
# showmount -e 192.168.0.100Export list for 192.168.0.100:/nfsshare 192.168.0.101
Der obige Befehl zeigt an, dass ein Verzeichnis mit dem Namen“ nfsshare „unter“ 192.168.0.100 “ verfügbar ist, um es für Ihren Server freizugeben.
Freigegebenes NFS-Verzeichnis mounten
Um dieses freigegebene NFS-Verzeichnis zu mounten, können wir den folgenden Befehl mount verwenden.
# mount -t nfs 192.168.0.100:/nfsshare /mnt/nfsshare
Der obige Befehl mountet das freigegebene Verzeichnis in „/mnt/nfsshare“ auf dem client-server. Sie können es nach dem Befehl überprüfen.,
Der obige Mount-Befehl mountete das freigegebene nfs-Verzeichnis vorübergehend auf dem nfs-Client, um ein NFS-Verzeichnis dauerhaft auf Ihrem System während des Neustarts zu mounten, müssen wir einen Eintrag in „/etc/fstab“machen.
# vi /etc/fstab
Fügen Sie die folgende neue Zeile wie unten gezeigt.
192.168.0.100:/nfsshare /mnt nfs defaults 0 0
Testen Sie die Funktion des NFS-Setups
Wir können unser NFS-Server-Setup testen, indem wir eine Testdatei auf dem Server erstellen Ende und überprüfen Sie die Verfügbarkeit auf der nfs-Clientseite oder umgekehrt.
Am Ende des nfsservers
habe ich eine neue Textdatei mit dem Namen „nfstest.,txt‘ in diesem freigegebenen Verzeichnis.
# cat > /nfsshare/nfstest.txtThis is a test file to test the working of NFS server setup.
Gehen Sie am nfsclient-Ende
Zu diesem freigegebenen Verzeichnis auf dem Clientserver und Sie finden diese freigegebene Datei ohne manuelle Aktualisierung oder Neustart des Dienstes.
Entfernen des NFS-Mounts
Wenn Sie dieses freigegebene Verzeichnis nach Abschluss der Dateifreigabe von Ihrem Server aushängen möchten, können Sie dieses bestimmte Verzeichnis einfach mit dem Befehl „umount“ aushängen. Siehe dieses Beispiel unten.
root@nfsclient ~]# umount /mnt/nfsshare
Sie können sehen, dass die Mounts entfernt wurden, indem Sie das Dateisystem erneut betrachten.,
# df -h -F nfs
Sie werden sehen, dass diese freigegebenen Verzeichnisse nicht mehr verfügbar sind.
Wichtige Befehle für NFS
Einige wichtigere Befehle für NFS.,owmount-e : Zeigt die verfügbaren Freigaben auf Ihrem lokalen Computer an