Question

J'ai un partage CIFS monté sur une machine Linux. Le serveur CIFS est en panne ou la connexion Internet est en panne, et tout ce qui touche le montage CIFS prend maintenant plusieurs minutes pour expirer, et reste indéchiffrable pendant que vous attendez. Je ne peux même pas exécuter ls dans mon répertoire personnel car il y a un lien symbolique pointant à l'intérieur du montage CIFS et ls essaie de le suivre pour décider de la couleur à utiliser. Si j'essaie de démonter (même avec -fl), le processus umount se bloque comme le fait ls. Même le sudo kill -9 ne peut pas le tuer. Comment puis-je forcer le noyau à démonter?

Était-ce utile?

La solution

J'utilise paresseux unmount: umount -l (c'est un L minuscule)

  

Démontez paresseux. Détache le système de fichiers   de la hiérarchie du système de fichiers maintenant, et   nettoyer toutes les références à la   système de fichiers dès qu'il n'est pas occupé   plus. (Nécessite le noyau 2.4.11 ou   plus tard.)

Autres conseils

umount -a -t cifs -l

a fonctionné comme un charme pour moi sur CentOS 6.3. Cela m'a évité un redémarrage du serveur.

Sous RHEL 6, cela a fonctionné:

umount -f -a -t cifs -l 

J'ai eu ce problème pendant un jour jusqu'à ce que je trouve la vraie résolution. Plutôt que d'essayer de forcer le démontage d'un partage smb bloqué, montez le partage avec l'option "souple". option. Si un processus tente de se connecter au partage qui n'est pas disponible, il cessera d'essayer après un certain temps.

  

soft Rend le montage souple. Échec des appels système de fichiers après quelques secondes.

mount -t smbfs -o soft //username@server/share /users/username/smb/share

stat /users/username/smb/share/file
stat: /users/username/smb/share/file: stat: Operation timed out

Peut ne pas être une vraie réponse à votre question mais c'est une solution au problème

Cela fonctionne pour moi (Ubuntu 13.10 Desktop sur un serveur Ubuntu 14.04): -

 sudo umount -f /mnt/my_share

Monté avec

 sudo mount -t cifs -o username=me,password=mine //192.168.0.111/serv_share /mnt/my_share

où serv_share est celui qui a été configuré et désigné dans le fichier smb.conf.

Essayez umount -f / mnt / share. Fonctionne bien avec NFS, jamais essayé avec cifs.

De même, jetez un oeil à autofs, il montera le partage uniquement lorsque vous y accéderez et le démontera après les mondes.

Un www.howtoforge.net

contient un bon didacticiel.

J'ai eu un problème très similaire avec davfs. Dans la page de manuel de umount.davfs , j'ai constaté que les options -f -l -n -r -v étaient ignorées par umount.davfs . Pour forcer le démontage de mon montage davfs, je devais utiliser umount -i -f -l / media / davmount .

Il existe une option -f à démonter que vous pouvez essayer:

umount -f /mnt/fileshare

Spécifiez-vous l'option '-t cifs' à monter? Assurez-vous également que vous ne spécifiez pas l'option "difficile" à monter.

Vous pouvez également envisager de fusesmb , car le système de fichiers sera en cours d'exécution dans l'espace utilisateur, vous pouvez le tuer comme n'importe quel autre processus.

umount -f -t cifs -l /mnt &

Faites attention à & amp; , laissez umount s'exécuter en arrière-plan. umount détachera le système de fichiers en premier, vous ne trouverez donc rien sur / mnt . Si vous exécutez la commande df , le code umount / mnt sera forcé.

Sur RHEL 6, cela a également fonctionné pour moi:

umount -f -a -t cifs -l FOLDER_NAME

Un démontage paresseux fera le travail pour vous.

umount -l <mount path>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top