J'ai un répertoire monté sur NFS sur une machine Linux qui s'est bloquée. J'ai essayé de forcer un démontage, mais cela ne semble pas fonctionner:
$ umount -f /mnt/data
$ umount2: Device or resource busy
$ umount: /mnt/data: device is busy
Si je tape " mount
", il semble que le répertoire n'est plus monté, mais il se bloque si je fais " ls /mnt/data
", et si j'essaye de supprimer le point de montage, j'obtiens:
$ rmdir /mnt/data
rmdir: /mnt/data: Device or resource busy
Puis-je faire autre chose que redémarrer la machine?
--force
essaiera plus fort de démonter et-v
ou-vvv
même révélera plus quel est le problème avec mount. Alors essayez:umount -vvv --force /badmount
Réponses:
Vous pouvez essayer un démontage paresseux:
la source
lsof
). J'ai causé le problème en sortant d'un script de sauvegarde que j'écris. Le script monte et démonte le répertoire, mais quelque chose à propos de la rupture dersync
mon montage a gâché. Je ne savais pas pour le démontage paresseux. C'est peut-être le périphérique NAS qui a causé tous les problèmes. Après avoir réussi le démontage, il s'est avéré que je devais redémarrer l'appareil avant de pouvoir le remonter.fusermount -uz /path/to/file
. A travaillé un charme pour moi! :)Si le serveur NFS a disparu et que vous ne pouvez pas le remettre en ligne, une astuce que j'utilise est d'ajouter un alias à l'interface avec l'adresse IP du serveur NFS (dans cet exemple, 192.0.2.55).
Linux
La commande pour cela est quelque chose à peu près comme:
Où 192.0.2.55 est l'adresse IP du serveur NFS qui a disparu. Vous devriez alors pouvoir envoyer une requête ping à l'adresse, et vous devriez également pouvoir démonter le système de fichiers (utilisez unmount -f). Vous devez ensuite détruire l'interface aliasée afin de ne plus acheminer le trafic vers l'ancien serveur NFS vers vous avec:
FreeBSD et systèmes d'exploitation similaires
La commande serait quelque chose comme:
Et puis pour le supprimer:
man ifconfig (8) pour en savoir plus!
la source
ifconfig eth0:fakenfs ...' and
umount -f -l / my / mount / dir 'a résolu le problème pour moi.ifconfig eth0:fakenfs delete
? Ou est-ce que je cherche autre chose? Commeifconfig eth0 delete 192.0.2.55
?ifconfig eth0:fakenfs down
devrait faire l'affaire.Essayez de courir
Cela devrait lister tout processus qui accède à / mnt / data qui l'empêcherait d'être démonté.
la source
J'ai eu le même problème, et ni l'un
umount /path -f
ni l' autre , ni l'unumount.nfs /path -f
ni l' autre nefuser -km /path
fonctionneenfin j'ai trouvé une solution simple>. <
sudo /etc/init.d/nfs-common restart
, alors faisons le simpleumount
;-)la source
umount -f -l ...
sudo service nfs-kernel-server restart
, mais votre réponse m'a définitivement mis sur la bonne voie, merci!Votre serveur NFS a disparu.
Idéalement, votre meilleur pari est si le serveur NFS revient.
Sinon, le "umount -f" aurait dû faire l'affaire. Cela ne fonctionne pas TOUJOURS, mais cela fonctionnera souvent.
Si vous savez quels processus utilisent le système de fichiers NFS, vous pouvez essayer de tuer ces processus et peut-être qu'un démontage fonctionnerait.
Enfin, je suppose que vous devez redémarrer.
De plus, NE montez PAS vos disques NFS en mode logiciel. Vous utilisez des montages rigides pour garantir qu'ils fonctionnent. C'est nécessaire si vous écrivez.
la source
Impossible de trouver une réponse fonctionnelle ici; mais sous Linux, vous pouvez exécuter "umount.nfs4 / volume -f" et il le démonte définitivement.
la source
umount -f /some/mountpoint
c'est la même chose queumount.nfs4 /some/mountpoint -f
.umount
appelsumount.nfs
, se bloque pour toujours (quelle que soit l'option).umount.nfs4 /mnt -f
prend assez de temps, mais se termine.umount.nfs4 /mnt -l
se termine immédiatement (peut-être parce qu'il n'attend pas les processus).