NFS - Mount hängt das System auf, wenn Remote nicht mehr zur Verfügung steht

German Forum
Post Reply
OsunSeyi
Posts: 30
Joined: 4. Dec 2016, 11:05

NFS - Mount hängt das System auf, wenn Remote nicht mehr zur Verfügung steht

Post by OsunSeyi » 22. Mar 2018, 05:23

Hi,

es gibt dazu verschiedene Beiträge im Netz:

Ein via NFS eingehängtes Dateisystem sollte mit den Optionen "intr" und "soft" eingehängt werden,
siehe /etc/fstab:

Code: Select all

TOURNEE:/mnt/hd/sda4/DAT   /mnt/hd/nfs/DAT   nfs         user,noauto,rw,intr,soft   0   0

# "INTR"
#
# Um zu vermeiden, dass I/O Operationen bei der Nichtverfügbarkeit des NFS Servers
# hängen bleiben.
#
# "SOFT"
#
# Zusätzlich kann auch die Option "soft" beim mount angegeben werden, damit bei
# Nichtverfügbarkeit Filesystemoperationen automatisch abgebrochen werden.
#
# Normalerweise ist es nicht möglich, über NFS gemountete Freigaben zu unmounten,
# wenn der NFS Server nicht mehr verfügbar ist.
#
# https://wiki.ubuntuusers.de/NFS/

"etc/mtab" zeigt, daß dies auch geschieht:
TOURNEE:/mnt/hd/sda4/DAT /mnt/hd/nfs/DAT nfs rw,user=root,noexec,nosuid,nodev,intr,soft,addr=192.168.2.2 0 0
Trotzdem hängt sich das System beim herunterfahren auf, just wenn die Meldung kommt:
"Umount remote Filesystems" (o.ä), wenn der Server aus Versehen vorher heruntergefahren wurde.

Kann ich das nicht so bewerkstelligen, daß ein "umount" trotzdem möglich ist?
Ich dachte, das wäre mit der Option "soft" bereits gegeben?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EDIT 1:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Habe dazu verschiedenes gefunden:
Google-Search

Noch nicht probiert: umount -f -l

You can use umount -f -l /mnt/myfolder , and that will fix the problem. -f – Force unmount (in case of an unreachable NFS system). (Requires kernel 2.1.116 or later.) -l – Lazy unmount. Detach the filesystem from the filesystem hierarchy now, and cleanup all references to the filesystem as soon as it is not busy anymore.

Werde danach hier berichten.
Die Lösung wäre, ein kurzes Script zu schreiben, daß beim herunterfahren eingebunden wird.
siehe hier im Forum

Testen, ob eingehängt laut /etc/mtab, und testen, ob erreichbar mittels 'ls'
Falls also in mtab gelistet, aber 'ls' bringt kein Ergebnis, umount -f -l zur Anwendung bringen.
(Edit: geht nicht, 'ls' hängt sich auf)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EDIT 2:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Nichts davon hat funktioniert...:

Code: Select all

root[tom]# umount -f -l TOURNEE:/mnt/hd/sda4/DAT
^C
root[tom]# umount -fr TOURNEE:/mnt/hd/sda4/DAT
^C
root[tom]# service restart  nfsd
Starte den nfsd Systemdienst neu
Eine Lösung wäre "autofs" einzurichten, aber es nervt nervt nervt...
Es muss doch irgendwie möglich sein, das nicht mehr erreichbare NFS wieder loszuwerden?

BTW:
Trotz der Mount-Optionen "intr" und "soft" hängt sich ROX auf, sch... :evil:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EDIT 3:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

stackoverflow:force-unmount-of-nfs-mounted-directory
github:force umount NFS
opensuse:Force nfs umount (hard, no intr)

"I already tried to setup a fake interface with the original ip and also setup a nfs server at the original ip with the same share. Both attempts did not help.
...
Setting up a nfsserver with same ip, hostname and shared directory restored the connection so I was able to umount."

Code: Select all

man umount:
-f     Force  unmount  (in  case  of  an unreachable NFS system). (Requires kernel 2.1.116 or later.)

uname -r:
3.10.17-smp
Warum 'umount -f' nicht funktioniert, hat sich mir nicht erschlossen.
Also scheint das Ende der Diskussion, daß es keine praktikable Lösung gibt, und im Fall, daß bei eingehängtem NFS-Filesystem in der Tat nur der Hauptschalter hilft, sollte sich Remote unvorhergesehen verabschieden.

Daß sich trotz der Mount-Optionen "intr" und "soft" der Filemanager aufhängt, kommt noch hinzu!

In meinem Fall würde es genügen, nach Durchführung der Backup-Scripte (um derentwillen NFS läuft) einen Dialog zu öffnen, der an das Aushängen erinnert.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
EDIT 4:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Code: Select all

ifconfig eth0:fakenfs 192.168.2.2 netmask 255.255.255.255
ping 192.168.2.2
... (klappt)

umount -f  192.168.2.2:/mnt/hd/sda4/DAT
umount -f  TOURNEE:/mnt/hd/sda4/DAT
umount -fl  TOURNEE:/mnt/hd/sda4/DAT

(klappt alles nicht)

ifconfig eth0:fakenfs down

Post Reply