Tengo un directorio montado en NFS en una máquina Linux que se ha bloqueado. Intenté forzar un desmontaje, pero no parece funcionar:
$ umount -f /mnt/data
$ umount2: Device or resource busy
$ umount: /mnt/data: device is busy
Si escribo " mount
", parece que el directorio ya no está montado, pero se cuelga si lo hago " ls /mnt/data
", y si trato de eliminar el punto de montaje, obtengo:
$ rmdir /mnt/data
rmdir: /mnt/data: Device or resource busy
¿Hay algo que pueda hacer aparte de reiniciar la máquina?
--force
intentará más difícil desmontarlo-v
o-vvv
incluso revelará más cuál es el problema con el montaje. Así que trate de:umount -vvv --force /badmount
Respuestas:
Puede probar un desmontaje perezoso:
fuente
lsof
). Causé el problema al romper un script de respaldo que estoy escribiendo. El script monta y desmonta el directorio, pero algo sobre salir dersync
mi montura se equivocó . No sabía sobre el desmontaje perezoso. Puede haber sido el dispositivo NAS causando todos los problemas. Después de desmontar con éxito, resultó que tuve que reiniciar el dispositivo antes de poder montarlo nuevamente.fusermount -uz /path/to/file
. ¡Funcionó un encanto para mí! :)Si el servidor NFS desapareció y no puede volver a conectarlo, un truco que uso es agregar un alias a la interfaz con la IP del servidor NFS (en este ejemplo, 192.0.2.55).
Linux
El comando para eso es más o menos como:
Donde 192.0.2.55 es la IP del servidor NFS que desapareció. Entonces debería poder hacer ping a la dirección, y también debería poder desmontar el sistema de archivos (use unmount -f). Luego debe destruir la interfaz con alias para que ya no enrute el tráfico al antiguo servidor NFS para usted con:
FreeBSD y sistemas operativos similares
El comando sería algo como:
Y luego para eliminarlo:
man ifconfig (8) para más!
fuente
ifconfig eth0:fakenfs ...' and
umount -f -l / my / mount / dir 'resolvió el problema para mí.ifconfig eth0:fakenfs delete
? ¿O estoy buscando algo más? Al igual queifconfig eth0 delete 192.0.2.55
?ifconfig eth0:fakenfs down
debería hacer el truco.Intenta correr
Eso debería enumerar cualquier proceso que esté accediendo a / mnt / data que evitaría que se desmonte.
fuente
Tuve el mismo problema, y ninguno
umount /path -f
, ningunoumount.nfs /path -f
, ningunofuser -km /path
funcionafinalmente encontré una solución simple>. <
sudo /etc/init.d/nfs-common restart
, entonces hagamos lo simpleumount
;-)fuente
umount -f -l ...
sudo service nfs-kernel-server restart
, pero su respuesta definitivamente me llevó al camino correcto, ¡gracias!Su servidor NFS desapareció.
Idealmente, su mejor opción es si el servidor NFS regresa.
Si no, el "umount -f" debería haber hecho el truco. SIEMPRE no funciona, pero a menudo lo hará.
Si sabe qué procesos están UTILIZANDO el sistema de archivos NFS, podría intentar eliminar esos procesos y luego tal vez funcionaría un desmontaje.
Finalmente, supongo que necesitas reiniciar.
Además, NO monte suavemente sus unidades NFS. Utiliza montajes rígidos para garantizar que funcionaron. Eso es necesario si estás escribiendo.
fuente
No se pudo encontrar una respuesta que funcione aquí; pero en Linux puede ejecutar "umount.nfs4 / volume -f" y definitivamente lo desmonta.
fuente
umount -f /some/mountpoint
es lo mismo queumount.nfs4 /some/mountpoint -f
.umount
llamadasumount.nfs
, se cuelga para siempre (independientemente de la opción).umount.nfs4 /mnt -f
lleva bastante tiempo, pero se completa.umount.nfs4 /mnt -l
se completa de inmediato (quizás porque no espera los procesos).