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

So verwende ich NFS zum Freigeben von Ordnern zwischen verschiedenen Systemen im Homelab-Setup

Wenn Sie mehrere Systeme in Ihrem Netzwerk haben, insbesondere wenn Sie sie wie in einem Homelab oder über Ihre Organisation virtualisieren, ist das Vorhandensein von freigegebenen Ordnern äußerst praktisch und nützlich, um Ihre Arbeit einfacher und schneller zu machen.

Ich habe zum Beispiel einen Ordner, den ich für verschiedene virtuelle Maschinen freigebe. Auf diese Weise ist alles, was in einem System heruntergeladen wird, sofort auf dem anderen System verfügbar.

Ich habe den Ordner auf einem zentralisierten File-Sharing-NFS-virtualisierten Server. Dieser Ordner wird für einen Container freigegeben, der eine Torrenting-App ausführt, in der ich Dateien herunterlade, die gleichzeitig für einen anderen Container verfügbar werden, der dieselben Dateien auch zur Verarbeitung verwenden kann.

Grundsätzlich zentralisiere ich meine Dateien an einem Ort, den ich später aus Gründen der Bequemlichkeit und Funktionalität mit verschiedenen Geräten und Instanzen teile.

Verwenden Sie ein normales NFS oder eine NAS-Dateifreigabe-App?

In meinem Fall führe ich einfach eine NFS-Freigabe aus, weil ich nicht über genügend Ressourcen verfüge, um eine NAS-App auszuführen, die auch die gleiche Aufgabe erfüllen würde. Aus diesem Grund habe ich dies so einfach und grundlegend wie möglich eingerichtet.

Einrichten der Freigabequelle

Dazu richte ich zunächst einen einfachen Debian-Server ein und richte darin einige Ordner ein, die von meinen internen Geräten gemeinsam genutzt werden sollen.

Abhängig davon, wie Sie diese Ordner freigeben möchten, und von Ihrer speziellen Umgebung (Zuhause, Büro, Außenwelt usw.) müssen Sie überlegen, wie Sie Berechtigungen einrichten.

Angenommen, dies gilt nur für Ihr internes Netzwerk und Sie haben bereits geeignete Firewalls, die sich um die Sicherheit kümmern, werden wir dies weit öffnen:

sudo chown nobody:nogroup /home/helder/SharingFolder
sudo chmod 777 /home/helder/SharingFolder

Sobald ich diese Ordner habe, musste ich nfs-kernel-server installieren, damit mein Server „verstehen“ kann, wie Dinge über NFS freigegeben werden.

Abhängig von Ihrer Distribution können Sie dies auf die eine oder andere Weise einrichten, aber da ich Debian verwendet habe, habe ich Folgendes verwendet:

sudo apt install nfs-kernel-server

Danach musste ich zuerst den Zugriff auf die Ordner, die ich freigeben möchte, bereitstellen und diese so einrichten, dass sie dauerhaft sind. Dies erfolgt über die Exportdatei.

Außerdem musste ich wissen, mit wem ich das in meinem Netzwerk teilen wollte, also wusste ich, dass ich zwei verschiedene Container hatte, die diesen Ordner verbrauchen würden, und zuvor ihre internen IPs identifiziert hatte:192.10.10.20 und 192.10.10.30:

sudo vi /etc/exports

Wie Sie sehen können, erteile ich meinen Containern Lese- und Schreibberechtigungen, da dies in meinem Fall erforderlich war. Sie können stattdessen einfach eine Nur-Lese-Berechtigung erteilen, wenn es sich um etwas handelt, das keine Änderungen an freigegebenen Dateien vornehmen soll.

Zuletzt müssen Sie in diesem Teil des Prozesses Ihre Änderungen gültig und funktionsfähig machen. Dazu:

sudo exportfs -a
sudo systemctl restart nfs-kernel-server

Dadurch werden Ihre Exporte aktiviert und die Freigabe an die bereitgestellten IPs gestartet.

Einrichten der empfangenden Sharer

Jetzt ist es an der Zeit, das andere Ende einzurichten, die Verbraucher dieser freigegebenen Ordner.

Dazu müssen Sie sich bei jeder der empfangenden Instanzen anmelden und dieselben Schritte ausführen. Für diesen Artikel zeige ich nur einen davon (192.10.10.20), aber Sie müssen überall tun, wo Sie Zugriff darauf haben möchten.

Wie ich dies bei Ubuntu-Containern getan habe, können die Befehle bei einigen anderen Distributionen variieren, aber im Wesentlichen sind sie gleich.

Im Konzept muss lediglich ein Montagepunkt an Ihren Empfängern eingerichtet werden. Diese Einhängepunkte funktionieren als normale Ordner auf Ihrer Freigabe, aber die Realität ist, dass sie im Grunde genommen mit dem physischen Ordner auf dem Sharer (in meinem Fall Ubuntu-Container) verknüpft sind.

Wir beginnen mit dem Erstellen der Ordner auf dem Empfängercomputer:

mkdir /home/helder/ReceivingShare

Jetzt müssen wir sicherstellen, dass NFS-Funktionen auf unserem empfangenden Container installiert sind, also werden wir Folgendes tun:

sudo apt install nfs-common

Angenommen, Sie möchten, dass dies eine dauerhafte Freigabe in Ihrem Container ist, sodass jederzeit darauf zugegriffen werden kann. Lassen Sie uns dies daher als dauerhafte Freigabe im Container über die Datei /etc/fstab einrichten:

sudo vi /etc/fstab

Danach schlage ich vor, jeden Empfängercontainer oder -computer neu zu starten, damit die fstab getestet und bestätigt werden kann, und Sie sollten jetzt einen gemeinsamen Ordner haben, der in Ihrem Netzwerk mit Ihren konfigurierten Geräten geteilt wird.


Linux
  1. So verwenden Sie autofs zum Mounten von NFS-Freigaben

  2. Linux – So legen Sie Standard-Dateiberechtigungen für alle Ordner/Dateien in einem Verzeichnis fest

  3. Wie verwende ich den Dateityp in Vim?

  4. So verwenden Sie ein anderes GTK 3-Design für bestimmte Zwecke

  5. So legen Sie den Pfad für sudo-Befehle fest

So verwenden Sie Avidemux für die Videobearbeitung

So richten Sie die Multi-Faktor-Authentifizierung für SSH unter Linux ein

So installieren und verwenden Sie Telnet auf Linux-Systemen

So legen Sie in Linux für jeden Monitor ein anderes Hintergrundbild fest

So verwenden Sie Sets in Python

So richten Sie einen NGINX RTMP-Server für das Streaming ein