Einleitung
In diesem Dokument wird beschrieben, wie Sie einen NFS-Fehler mit "Veraltetem Dateihandle" beheben und beheben, wenn der Befehl df -h im Cisco DNA Center ausgeführt wird.
Voraussetzungen
Anforderungen
- Linux-Kenntnisse im Dateisystemmanagement
- NFS v3 oder v4 - Informationen
- Zugriff auf die maglev CLI Full Bash Shell
- NFS-IP-Adresse oder Hostname und NFS-Verzeichnispfad
Verwendete Komponenten
- Cisco DNA Center 2.3.3 Maglev-CLI
- NFS v4
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Problem
Cisco DNA Center-Komplett-Backups (Absicherung) können fehlschlagen, weil das NFS nicht richtig gemountet ist, selbst wenn Sie sehen, dass es erfolgreich in den Cisco DNA Center-Backup-Einstellungen konfiguriert wurde. Wenn Sie die Dateisysteme in Cisco DNA Center mit dem Befehl df -h überprüfen, sehen Sie, dass Sie Fehlerzeilen am Anfang der Befehlsausgabe erhalten: df: /data/nfs: Veraltetes Dateihandle
Dieser NFS Stale Handle-Dateifehler kann in jedem Linux-System aus mehreren Gründen vorhanden sein. Der häufigste Grund ist, dass sich der eingesetzte Dateiinode auf dem Plattengerät verändert hat. Wenn beispielsweise ein Dienst oder eine Anwendung eine Datei öffnet oder erstellt, löscht und schließt sie und versucht dann erneut, auf dieselbe Datei zuzugreifen oder sie zu löschen, sodass der Verweis auf diese Datei veraltet oder ungültig ist. Mit anderen Worten, ein Dateihandle wird veraltet, wenn die Datei oder das Verzeichnis, auf die bzw. das vom Handle verwiesen wird, von einem anderen Host entfernt wird, während der Client weiterhin einen aktiven Verweis auf das Objekt enthält.
Beispiel:
maglev@maglev-master-10-10-10-10:~$ df -h
df: /data/nfs: Stale file handle
Filesystem Size Used Avail Use% Mounted on
udev 189G 0 189G 0% /dev
tmpfs 38G 9.4M 38G 1% /run
/dev/sdb2 47G 28G 18G 62% /
tmpfs 189G 0 189G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 189G 0 189G 0% /sys/fs/cgroup
/dev/sdb4 392G 123G 250G 34% /data
/dev/sdb3 239M 163M 76M 69% /boot/efi
/dev/sdc3 166G 5.6G 152G 4% /var
/dev/sdc1 671G 102G 536G 16% /data/maglev/srv
/dev/sdc2 923G 175G 702G 20% /data/maglev/srv/maglev-system
/dev/sdd1 5.2T 127G 4.9T 3% /data/maglev/srv/ndp
glusterfs-brick-0.glusterfs-brick:/default_vol 923G 187G 699G 22% /mnt/glusterfs/default_vol
glusterfs-brick-0.glusterfs-brick:/ndp_vol 5.2T 181G 4.9T 4% /mnt/glusterfs/ndp_vol
tmpfs 38G 0 38G 0% /run/user/1234
maglev@maglev-master-10-10-10-10:~$
Eine ähnliche Ausgabe bietet der Befehl magctl sts backup mount display.
Beispiel:
maglev@maglev-master-10-10-10-10:~$ magctl sts backup mount display
ERROR: df: /data/nfs: Stale file handle
Hinweis: Mehrere veraltete Datei-Handle-Fehler können auch für den gleichen NFS-Server mit verschiedenen Mounting Points gefunden werden. Die Lösung kann auf jeden veralteten Dateihandhabungsfehler angewendet werden.
Lösung
1.- Entfernen Sie die NFS-Einstellungen, um das NFS aus dem System zu löschen. Navigieren Sie zu Cisco DNA Center Menü > Einstellungen > Sicherung und Wiederherstellung > Konfigurieren > Cisco DNA Center (NFS), und klicken Sie auf die Schaltfläche Entfernen.
2.- Validieren Sie den veralteten NFS-Montagepunkt im System, indem Sie den folgenden Befehl ausführen:
$ Mount | grep -i <NFS_IP_ADDRESS_OR_FQDN>
Beispiel:
maglev@maglev-master-10-10-10-10:~$ mount | grep -i 192.168.100.1
192.168.100.1:/dna_backups/dna_assurance_data on /data/nfs type nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,acregmin=60,acdirmin=60,soft,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.10.16.2,local_lock=none,addr=10.10.16.3)
Auch für den gleichen NFS-Server mit verschiedenen Mount-Punkten können mehrere Ergebnisse gefunden werden. Sie können alle abgehängt werden müssen.
Tipp: Wenn die Secure Shell in der maglev CLI (magshell) aktiviert ist, können Sie den Befehl _shell ausführen, um den vollständigen Bash zu aktivieren. Sie können einen Token vom TAC anfordern, um den Zugriff auf die vollständige Maglev-Bash-Shell zu gewähren, abhängig von der Cisco DNA Center-Version.
3.- Manuelles Unmounten des NFS-Mounting-Points, der den Fehler "Stale file handle" in den Dateisystemen liefert, indem Sie den folgenden Befehl ausführen:
$ sudo umount <NFS_IP_ADDRESS_OR_FQDN>:/remote/NFS/Pfad/lokal/montierbar/Punkt
Beispiel:
maglev@maglev-master-10-10-10-10:~$ sudo umount 192.168.100.1:/dna_backups/dna_assurance_data /data/nfs
4.- Sobald Sie das NFS aus dem Dateisystem entmountet haben, können Sie den Befehl df -h doppelt überprüfen und überprüfen, dass Sie den Fehler "Stale file handle" nicht mehr sehen. Wenn Sie noch einen Eintrag für veraltete Dateizugriffe sehen, gehen Sie erneut durch die Schritte 2 und 3, da das NFS verschiedene Mounting Points haben kann, die ebenfalls verwendet wurden, und sie müssen ebenfalls entmountet werden.
5.- Navigieren Sie abschließend zum Cisco DNA Center-Menü > Einstellungen > Sichern und Wiederherstellen > Konfigurieren > Cisco DNA Center (NFS), und konfigurieren Sie das NFS neu.
Validierung
Überprüfen Sie, ob das NFS nun korrekt gemountet ist, ohne dass weitere "veraltete Dateihandle"-Fehler auftreten. Führen Sie dazu den Befehl df -h aus, und überprüfen Sie den NFS-Mount-Punkt der Backup-Einstellungen mit magctl:
maglev@maglev-master-10-10-10-10:~ $ magctl sts backup mount display
+------------------------------------------+------+------------+------------+------------+
| remote | type | used | available | percentage |
+------------------------------------------+------+------------+------------+------------+
|192.168.100.1:/dna_backups/dna_assurance_data/ | nfs4 | 6369873920 | 3744850944 | 63% |
+------------------------------------------+------+------------+------------+------------+