ubuntuusers.de

NFS3 - NFS4

Status: Gelöst | Ubuntu-Version: Xubuntu 20.04 (Focal Fossa)
Antworten |

Lichtmacher

Anmeldungsdatum:
26. Januar 2009

Beiträge: 260

Hallo Zusammen,

ich beschäftige mich gerade mit der Aktualisierung der Systeme und wollte mich über NFS3 versus NFS4 kundig machen.

Da steht in https://wiki.ubuntuusers.de/NFSv4/ :

Gegenüber den Versionen 2/3 wird bei der Freigabe über NFSv4 ein sogenanntes "Pseudodateisystem" benötigt.

Also man muss ein "Hauptverzeichnis" mittels fsid=0 in den Optionen der /etc/exports markieren und die anderen Freigaben mittels bind-mounts dort einbinden.

Meine bisherige Konfiguration sieht so aus:

Server: /etc/exports

/home/Daten       Client(rw,async,no_subtree_check,no_root_squash,insecure)
/home             Client(rw,async,no_subtree_check,no_root_squash,insecure)

Client: /etc/fstab

Server:/home/Daten/Ordner1  /home/Daten/Ordner1 nfs nosuid,hard,intr,rw,_netdev        0       0
Server:/home/Daten/Ordner2  /home/Daten/Ordner2 nfs nosuid,hard,intr,rw,_netdev        0       0
Server:/home                /home/Server_home   nfs nosuid,hard,intr,rw,_netdev        0       0

mount auf dem Client gibt mir folgendes:

Server:/home/Daten/Ordner1 on /home/Daten/Ordner1 type nfs4 (rw,nosuid,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.177.5,local_lock=none,addr=192.168.178.5,_netdev)
Server:/home/Daten/Ordner2 on /home/Daten/Ordner2 type nfs4 (rw,nosuid,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.177.5,local_lock=none,addr=192.168.178.5,_netdev)
Server:/home on /home/Server_home type nfs4 (rw,nosuid,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.177.5,local_lock=none,addr=192.168.178.5,_netdev)

Ich habe nicht nfs4 als Typ in der fstab vorgegeben, aber mount sagt vers=4.2.

Mich irritiert, dass nfs4 automatisch verwendet wurde, obwohl ich dieses "Hauptverzeichnis" nicht markiert habe. Kann mir jemand dazu etwas erhellendes schreiben?

Lichtmacher

(Themenstarter)

Anmeldungsdatum:
26. Januar 2009

Beiträge: 260

Ich habe selber etwas gefunden:

https://unix.stackexchange.com/questions/763248/is-fsid-really-needed-for-nfs-export

Dort steht:

For NFSv4, fsid=0 (which can also be specified as fsid=root) has a special meaning: any filesystem exported with that option will be the root of all exported NFSv4 filesystems.

On modern versions of Linux, this is also optional: if you don't specify fsid=0/fsid=root at all, the kernel will automatically provide an empty virtual NFS root filesystem, and make all the NFS exports children of that filesystem. This makes NFSv4 exports similar to NFSv3 and older.

But if you don't want to disclose your actual NFS server directory structure to the clients any more than necessary, you might want to use the fsid=0 option and choose to construct the virtual NFSv4 directory tree the way you want.

On older Linux NFSv4 implementations, specifying fsid=0 may be mandatory. I don't recall exactly when it was made optional.

Dort ist auch etwas ausführlicher erklärt, was mit der Option fsid= auf sich hat.

Vermutlich gab es die Änderung vor 2017. Die sind bei manchen (älteren) NFS-Anleitungen nicht berücksichtigt.

https://documentation.suse.com/de-de/sles/12-SP5/html/SLES-all/cha-nfs.html

Der SLES ist von Dezember 2017. Zwei Zitate aus der Doku:

Anmerkung: NFSv4

NFSv4 ist die aktuelle Version des NFS-Protokolls für SUSE Linux Enterprise Server. Die Verzeichnisse werden nunmehr in NFSv4 auf dieselbe Weise für das Exportieren vorbereitet wie in NFSv3.

In SUSE Linux Enterprise Server 11 war das Einhängen mit Einbindung in /etc/exports obligatorisch. Dies wird weiterhin unterstützt, ist jedoch überholt.

und

Tipp: Einhängeoptionen

In SUSE Linux Enterprise Server 11 war das Einhängen mit --bind in /etc/exports obligatorisch. Dies wird weiterhin unterstützt, ist jedoch überholt. Die Verzeichnisse werden nunmehr in NFSv4 auf dieselbe Weise für das Exportieren vorbereitet wie in NFSv3.

In der englischen Doku zu 12SP3 (2017) steht das gleiche.

Antworten |