GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist NFS und wie wird es unter Linux installiert?

Einführung

Dies ist ein reichhaltiges Thema, das viele Informationen enthält, die Sie interessieren könnten, wenn Sie sich als System-, Speicher- oder Sicherungsadministrator im Speicherbereich interessieren.

Es gibt verschiedene Arten von Dateisystemen und unser Hauptthema heute dreht sich um eines davon, und das ist NFS.

Speichertypen

Die drei Hauptspeichertypen sind:

– DAS

– SAN

– NAS

NAS (Network Attached Storage)

Einfach ausgedrückt:NAS ist es, Ordner für andere freizugeben, um ihre Daten anstelle ihrer lokalen Festplatten zu speichern. Sie müssen eine Verbindung zwischen dem Server und den Clients haben, damit dies funktioniert, und natürlich Festplatten mit freiem Speicherplatz auf dem Server. NAS ist ein Speicher auf Dateiebene, was bedeutet, dass Sie die Festplatten auf der Serverseite formatieren und mit dem formatierten Dateisystem teilen.

Und hier kommt unser NFS Dateisystem, es ist eines der Dateisysteme, mit denen Sie Ihr NAS formatieren können Festplatten mit, und das wollen wir jetzt tun, um unser Linux-Betriebssystem als NFS zu verwenden Server, was eigentlich bedeutet, dass wir ihn als NAS verwenden Server, aber mit unseren Festplatten, die mit NFS formatiert sind Dateisystem

NFS (Network File Sharing)

Ist ein Protokoll, mit dem Sie Verzeichnisse und Dateien mit anderen Linux-Clients über ein Netzwerk gemeinsam nutzen können. Freigegebene Verzeichnisse werden normalerweise auf einem Dateiserver erstellt, auf dem NFS ausgeführt wird Serverkomponente. Benutzer fügen ihnen Dateien hinzu, die dann mit anderen Benutzern geteilt werden, die Zugriff auf den Ordner haben.

Ein NFS Die Dateifreigabe wird auf einem Client-Rechner gemountet, wodurch sie genauso verfügbar ist wie Ordner, die der Benutzer lokal erstellt hat. NFS ist besonders nützlich, wenn der Speicherplatz knapp wird und Sie öffentliche Daten zwischen Client-Computern austauschen müssen.

NFS-Server Seite

Installieren Sie zuerst NFS-Pakete


# yum install nfs-utils rpcbind

Aktivieren Sie jetzt die Dienste beim Booten


#  systemctl enable nfs-server
#  systemctl enable rpcbind

Starten Sie die Dienste


#  systemctl start rpcbind
#  systemctl start nfs-server

Lassen Sie uns das freigegebene Verzeichnis erstellen, in dem die Clients ihre Daten speichern oder lesen können


# mkdir /sharednfs

Legen Sie die Berechtigungen so fest, dass jeder Benutzer auf dem Client-Computer auf den Ordner zugreifen kann (in der realen Welt müssen Sie überlegen, ob der Ordner restriktivere Einstellungen benötigt).


# sudo chown nobody:nogroup /sharednfs 
# sudo chmod 777 /sharednfs 

Zugriff für NFS-Clients gewähren

Um NFS-Clients Zugriff zu gewähren, müssen wir eine Exportdatei definieren. Die Datei befindet sich normalerweise unter /etc/exports

Bearbeiten Sie die Datei /etc/exports in einem Texteditor und fügen Sie eine der folgenden Optionen hinzu

ro / rw :
a) ro :Clients nur Lesezugriff auf die Freigabe gewähren.
b) rw :Clients Lese- und Schreibzugriff auf die Freigabe gewähren.
synchron / asynchron :
a) sync :Der NFS-Server antwortet nur auf die Anfrage, nachdem Änderungen, die durch vorherige Anfragen vorgenommen wurden, auf die Festplatte geschrieben wurden.
b) async :Gibt an, dass der Server nicht warten muss.
wdelay / no_wdelay
a) wdelay :Der NFS-Server verzögert das Festschreiben von Schreibanforderungen, wenn er vermutet, dass eine weitere Schreibanforderung unmittelbar bevorsteht.
b) no_wdelay :Verwenden Sie diese Option, um die Verzögerung zu deaktivieren. Die Option no_wdelay kann nur aktiviert werden, wenn standardmäßig sync Option aktiviert ist.
no_all_squash / all_squash :
a) no_all_squash :Ändert nicht die Zuordnung von Remote-Benutzern.
b) all_squash :um alle entfernten Benutzer einschließlich root zu squashen.
root_squash / no_root_squash :
a) root_squash :verhindert, dass entfernt verbundene Root-Benutzer Root-Zugriff haben. Effektives Unterdrücken von Remote-Root-Rechten.
b) no_root_squash :Root-Squashing deaktivieren.

Beispiel1 (einzelner Client):


# vi /etc/exports
/sharednfs {clientIP}(rw,sync,no_subtree_check)

Beispiel2 (mehrere Clients):


# vi /etc/exports
/sharednfs {clientIP-1}(rw,sync,no_subtree_check)
           {clientIP-2}(...)
           {clientIP-3}(...)

Beispiel3 (Subnetz):


# vi /etc/exports
/sharednfs {subnetIP}/{subnetMask}(rw,sync,no_subtree_check)

NFS-Freigabe für Clients verfügbar machen

Exportieren Sie die Freigabe, um das Verzeichnis Clients zur Verfügung zu stellen


# sudo exportfs -a 

-a : exports entries in /etc/exports but do not synchronize with /var/lib/nfs/etab
-i : ignore entries in /etc/exports and uses command line arguments
-u : un-export one or more directories
-o : specify client options on command line
-r : re-exports entries in /etc/exports and sync /var/lib/nfs/etab with /etc/exports

Starten Sie dann den Dienst neu


# systemctl restart nfs-server

Firewall-Einstellungen

Standardmäßig sind alle nicht verwendeten Ports unter Linux deaktiviert, daher müssen wir NFS zulassen Ports in der Firewall-Konfiguration.

Gehen Sie dazu wie folgt vor


firewall-cmd --permanent --add-service mountd
firewall-cmd --permanent --add-service rpc-bind
firewall-cmd --permanent --add-service nfs
firewall-cmd --reload

Clientseite

Wir müssen das Paket auch auf dem Client-Rechner installieren


yum install -y nfs-utils

Zur Überprüfung der freigegebenen Ordner auf dem angegebenen Server, die für unseren Client verfügbar sind


showmount -e {serverIP}

Es wird etwa Folgendes angezeigt


Export list for {serverIP}:
/sharednfs {clientIP}

Stellen Sie die freigegebenen Ordner bereit

Jetzt ist es an der Zeit, die freigegebenen Ordner auf unserer Client-Seite bereitzustellen

Zuerst müssen wir ein Punktverzeichnis erstellen


mkdir /mnt/sharednfs

Zeit zum Mounten


mount {serverIP}:/sharednfs /mnt/sharednfs

Versuchen Sie zur Überprüfung, ein Verzeichnis oder eine Datei auf dem gemounteten Punkt

zu erstellen

touch /mnt/sharednfs/test

Zum Automounten der NFS-Freigaben

In fstab-Datei bearbeiten


vi /etc/fstab

diese Zeile hinzufügen


{serverIP}:/sharednfs /mnt/sharednfs    nfs     nosuid,rw,sync,hard,intr  0  0

Zum Unmounten des NFS Aktien


umount /mnt/sharednfs

Vergessen Sie schließlich nicht, die Firewall-Regeln auch auf der Client-Seite hinzuzufügen


firewall-cmd --permanent --add-service mountd
firewall-cmd --permanent --add-service rpc-bind
firewall-cmd --permanent --add-service nfs
firewall-cmd --reload

Schlussfolgerung

NFS ist ein großartiges Protokoll, um Ihre Daten an einem Ort oder in einem freigegebenen Ordner zu zentralisieren, anstatt sie lokal auf jedem Gerät zu speichern. Dies gibt Ihnen auch die Möglichkeit, den lokal begrenzten Speicherplatz auf Ihrem Gerät zu nutzen.

Mit der richtigen Konnektivität und Konfiguration haben Sie die perfekte Lösung, um Ihre Daten an einem Ort zu speichern.


Linux
  1. So installieren und testen Sie Ansible unter Linux

  2. Flatpak unter Linux:Was es ist und wie man Apps damit installiert

  3. So installieren und verwenden Sie Flatpak unter Linux

  4. Was ist Podman und wie installiere ich Podman unter Linux?

  5. So installieren und verwenden Sie Traceroute unter Linux

So installieren und verwenden Sie phpMyAdmin unter Linux

So installieren und verwenden Sie den fd-Befehl unter Linux

So installieren und verwenden Sie Nu Shell unter Linux

So installieren und konfigurieren Sie einen NFS-Server auf einem Linux-System

So installieren und konfigurieren Sie einen Linux Ubuntu NFS-Server

So installieren Sie Java 8 JRE und JDK aus einer RPM-Datei unter Linux