miércoles, 21 de agosto de 2019

NFS: Stale file handle



Cómo solucionar el error "NFS: Stale file handle" en un sistema Linux con carpetas remotas.



Al conectarme a una máquina Linux y dirigirme a una carpeta montada por NFS, vi que dicha carpeta no era accesible. Lancé entonces un df y me encontré con el siguiente mensaje:

HOST # df -h df: ‘/usr/mount’: Stale file handle Filesystem     Size   Used Avail Use% Mounted on /dev/sda2       95G    29G   62G  32% / devtmpfs       119G   8.0K  119G   1% /dev tmpfs          119G    80K  119G   1% /dev/shm tmpfs          119G   114M  119G   1% /run tmpfs          119G      0  119G   0% /sys/fs/cgroup /dev/sda1      148M      0  148M   0% /boot/efi

Este problema se da cuando un sistema es apagado de forma brusca y no se desmontan correctamente los puntos de montaje del mismo, dando lugar a que la parte servidor crea que siguen montados.

Cuando la máquina cliente vuelve a estar operativa y trata de montar la carpeta compartida con ella, no puede montarla y muestra este error titulado "Stale file handle".

Para solucionar este problema, debemos conectarnos al sistema desde el que se exportan las carpetas (lado servidor) y re-exportar las carpetas compartidas.


Lado servidor



Primero, desmontamos los exports desde el lado servidor:

HOST # exportfs -ua

Luego, verificamos que no se está compartiendo ninguna carpeta:

HOST # cat /proc/fs/nfs/exports # Version 1.1 # Path Client(Flags) # IPs

Por último, re-exportamos todas las carpetas compartidas:

HOST # exportfs -a

Una vez hecho esto, el montaje de la carpeta ya debería ser posible en el sistema operativo cliente.


Lado cliente



Para montar las carpetas compartidas desde el lado cliente podemos hacerlo de forma individual o podemos desmontar y volver a montar todas las carpetas compartidas al mismo tiempo. Para desmontar/montar todas las carpetas al mismo tiempo, podemos usar la opción -a (all):

HOST # umount -fa

HOST # mount -a

Una vez hecho esto, ya deberíamos ver correctamente el punto de montaje al lanzar el comando df:

HOST # df -h Filesystem                   Size   Used   Avail   Use%   Mounted on /dev/sda2                     95G    29G     62G    32%   / devtmpfs                     119G   8.0K    119G     1%   /dev tmpfs                        119G    80K    119G     1%   /dev/shm tmpfs                        119G   114M    119G     1%   /run tmpfs                        119G      0    119G     0%   /sys/fs/cgroup /dev/sda1                    148M      0    148M     0%   /boot/efi srv1.dominio.com:/usr/mount   10G     5G      5G    50%   /usr/mount


Fuentes:

https://unix.stackexchange.com/a/447581
0

0 comentarios:

Publicar un comentario