GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So deaktivieren Sie das NFS-Client-Caching in CentOS/RHEL

Gelegentlich liest der NFS-Client Daten aus NFS-Exporten nicht synchron, z. B. wenn sie von einem anderen NFS-Client geschrieben wurden. Nachdem NFS-Client A beispielsweise eine Datei mit „echo hallo> /NFS_mountpoint/testfile“ geschrieben hat, kann NFS-Client B die Datei mit „No such file“ nicht lesen oder kann lesen, aber der Inhalt der Datei könnte alt sein.

NFS-Clients cachen verschiedene NFS-Daten. RFC 1813 für die NFSv3-Spezifikation sagt:

Clients can perform caching in varied manner.

und sagt auch:

The NFS version 3 protocol does not define a policy for
caching on the client or server. In particular, there is no
support for strict cache consistency between a client and
server, nor between different clients.
Therefore this is designed behavior of Linux NFS client.

Daher ist dies ein beabsichtigtes Verhalten des Linux-NFS-Clients. Deaktivieren/überspringen Sie das NFS-Client-Caching, indem Sie die NFS-Client-Mount-Optionen konfigurieren, oder lesen/schreiben Sie die Daten mit O_DIRECT /O_SYNC .

Um alle Caches für den NFS-Client zu deaktivieren, fügen Sie „sync ” für die Einhängeoption, z. B.

# mount -t nfs -o vers=3,sync NFS_Server:/NFS_Export/ /NFS_Mountpoint
Hinweis :Diese Option kann zu Leistungseinbußen führen. Testen Sie diese Option sorgfältig auf Ihrem Testsystem, bevor Sie sie auf einem Produktionssystem anwenden.

Um das Caching von Verzeichniseinträgen durch den NFS-Client zu deaktivieren, fügen Sie „noac,lookupcache=none hinzu ” für die Mount-Option, wie im folgenden Beispiel:

# mount -t nfs -o vers=3,noac,lookupcache=none NFS_Server:/NFS_Export/ /NFS_Mountpoint
Hinweis :Es gibt Unterschiede zwischen noac und actimeo=0. actimeo=0 kann Zuordnungsänderungen zwischenspeichern, noac jedoch nicht. Somit ist noac sicherer als actimeo=0, kann sich aber auf die Performance auswirken. Es ist auch in Ordnung, beide Optionen zu setzen, um dies weiter einzuschränken.


Cent OS
  1. CentOS / RHEL 7 :Konfigurieren eines NFS-Servers und NFS-Clients

  2. So deaktivieren Sie NetworkManager unter CentOS / RHEL 7

  3. So konfigurieren Sie den iSCSI-Initiator (Client) in CentOS / RHEL 6

  4. So deaktivieren Sie IPv6 unter CentOS / RHEL 5

  5. So deaktivieren Sie den Avahi-Daemon-Dienst in CentOS/RHEL

So richten Sie den NFS-Server unter CentOS 8 / RHEL 8 ein

So deaktivieren Sie SELinux unter CentOS 7/6 und RHEL 7/6

So deaktivieren Sie IPv6 unter CentOS 7 / RHEL 7

So richten Sie den NFS-Server unter CentOS 7 / RHEL 7 ein

So deaktivieren Sie IPv6 unter CentOS 8 / RHEL 8

So deaktivieren Sie den os-prober in CentOS/RHEL 7