NFS-Generator
Robuste Mount-Einträge erzeugen10.20.0.15:/srv/shared /mnt/shared nfs rw,hard,_netdev,nofail,x-systemd.automount,nfsvers=4.2,timeo=600,retrans=2 0 0
- ✓hard verhindert stillen Datenverlust bei Serverunterbrechungen.
- ✓_netdev und systemd-Automount vermeiden Mount-Fehler beim Boot.
Einführung
Der NFS-Generator erzeugt eine fstab-Zeile für eine NFS-Freigabe mit Optionen, die den Mount widerstandsfähig machen: hard statt soft, _netdev, damit der Boot auf das Netzwerk wartet, nofail, damit eine fehlende Freigabe den Boot nicht blockiert, und x-systemd.automount für bedarfsgesteuertes Mounten.
Hard-Mounts wiederholen Anfragen, bis der Server antwortet; Soft-Mounts können Fehler zurückgeben, die Anwendungen als echte E/A-Fehler missdeuten — deshalb ist hard für die meisten Arbeitslasten die empfohlene Vorgabe.
Ziel
- Eine korrekte, vollständige fstab-Zeile aus Server, Export, Einhängepunkt und NFS-Version erzeugen.
- Produktionsorientierte Vorgaben anwenden: hard, _netdev, nofail, Automount, timeo und retrans.
- Bei NFSv3 warnen, da es rpcbind und zusätzliche Firewall-Regeln erfordert.
Eingaben
- Hostname oder IP des NFS-Servers.
- Export-Pfad auf dem Server (z. B. /srv/shared).
- Lokaler Einhängepunkt (z. B. /mnt/shared).
- NFS-Version: 4.2, 4.1, 4 oder 3.
So funktioniert es
Das Werkzeug setzt die sechs fstab-Felder zusammen: Server:Export als Gerät, Einhängepunkt, Dateisystemtyp nfs, Optionsliste, 0 für Dump und 0 für fsck-Pass.
Die Optionsliste wird aus den Eingaben gebaut: rw, hard, _netdev, nofail, x-systemd.automount, nfsvers=<Version>, timeo=600 und retrans=2. timeo und retrans steuern, wie lange der Client wartet und wie oft er vor dem Aufgeben erneut versucht.
Wird NFSv3 gewählt, erscheint eine Warnung, weil NFSv3 auf rpcbind angewiesen ist und zusätzliche Ports in der Server-Firewall öffnet; NFSv4 ist vorzuziehen, wenn der Server es unterstützt.
Testbares Beispiel
Ausprobieren — die Analyse läuft lokal in Ihrem Browser.
Beispiel
Server: 10.20.0.15 Export: /srv/shared Mount: /mnt/shared Version: 4.2
Erwartete Ausgabe
10.20.0.15:/srv/shared /mnt/shared nfs rw,hard,_netdev,nofail,x-systemd.automount,nfsvers=4.2,timeo=600,retrans=2 0 0 Ergebnis: kein kritisches Problem erkannt.
Ausgabe verstehen
- Die erzeugte Zeile kann direkt an /etc/fstab angehängt und dann mit sudo mount -a gemountet werden.
- Die guten Befunde bestätigen hard und _netdev — diese beiden Optionen verhindern die beiden häufigsten NFS-Fehlerarten.
- Erscheint eine Warnung zu NFSv3, prüfen Sie, ob der Server NFSv4 unterstützt, bevor Sie sie akzeptieren.
Risiken
- Hard-Mounts geben nie auf: verschwindet der Server dauerhaft, können Prozesse hängen, bis der Server zurückkehrt oder der Mount gelöst wird.
- Automounting verschiebt den Mount bis zum ersten Zugriff und ändert damit das Verhalten für Dienste, die den Pfad beim Boot erwarten.
- Eine erzeugte Zeile ohne Test in /etc/fstab einzufügen, kann den Boot eines Produktionsservers brechen.
Grenzen
- Das Werkzeug testet keine Verbindung, Exporte oder Authentifizierung (z. B. NFSv4-Kerberos).
- Die Optionen sind eine sinnvolle Basis, keine universelle Best Practice — Hochlatenz- oder Spezial-Arbeitslasten brauchen möglicherweise andere timeo/retrans-Werte.
- Es erzeugt keine /etc/exports-Einträge für die Serverseite.
Offizielle Referenzen
FAQ
Warum hard statt soft?
Ein Soft-Mount kann nach einem Timeout einen Fehler zurückgeben, selbst wenn der Server nur langsam ist, und Anwendungen behandeln diesen Fehler oft als echten E/A-Fehler. Hard-Mounts versuchen weiter, was für die Datenintegrität in den meisten Fällen sicherer ist.
Was bewirkt nofail?
nofail weist das System an, den Boot auch dann fortzusetzen, wenn dieser Mount fehlschlägt, statt in den Notfallmodus zu gehen. Für optionale Freigaben ist es unerlässlich.
Was ist x-systemd.automount?
Es lässt systemd die Freigabe erst beim ersten Zugriff mounten statt beim Boot, sodass ein langsamer oder nicht erreichbarer Server den Boot nicht verzögert. Der Einhängepunkt existiert sofort; das eigentliche Mounten erfolgt verzögert.