NFS: incapaz de desmontar o compartilhamento NFS quando o servidor está offline

5

Quando o nosso servidor NFS principal fica offline, todos os clientes que tiveram um compartilhamento montado são afetados da seguinte maneira:

1. 'df' does not work (times out)
2. 'lsof' does not work (times out)
3. I cannot unmount the share (umount times out)
4. I cannot restart the client PC, the shutdown process gets stuck 
   while trying to umount the dead NFS share: 
   'nfs server not responding still trying'
5. hard reboot (reset) works, but while booting the client PC gets 
   stuck while trying to mount the NFS share

Agora eu sei como resolver o problema nr. 5. Eu posso alterar a entrada em fstab to noauto . Mas e os outros problemas? O cliente NFS não tem inteligência para parar de esperar por um servidor NFS morto? Por que espera indefinidamente? Posso em algum lugar definir um tempo limite, para que aconteça o que acontecer, depois de x segundos ele desistir de tentar?

    
por Martin Vegter 27.10.2013 / 19:37

2 respostas

2

Sim, esta é a natureza do NFS. Os clientes aguardarão indefinidamente pelo retorno do recurso NFS. Acredite ou não, ele foi projetado para funcionar dessa maneira!

automounting

A melhor abordagem provavelmente seria usar uma ferramenta como autofs para automontar os compartilhamentos NFS conforme necessário, em vez de mantê-los montados indefinidamente.

Usando apenas o NFS

Como @Patrick apontou nos comentários, você pode reduzir esse comportamento usando a opção soft ao montar compartilhamentos NFS.

trecho da fonte: link

soft

If a file request fails, the NFS client will report an error to the process on the client machine requesting the file access. Some programs can handle this with composure, most won't. We do not recommend using this setting; it is a recipe for corrupted files and lost data. You should especially not use this for mail disks --- if you value your mail, that is.

hard

The program accessing a file on a NFS mounted file system will hang when the server crashes. The process cannot be interrupted or killed (except by a "sure kill") unless you also specify intr. When the NFS server is back online the program will continue undisturbed from where it was. We recommend using hard,intr on all NFS mounted file systems.

No seu arquivo /etc/fstab

   # device             mountpoint  fs-type    options    dump fsckord
   ...
   master.foo.com:/home  /mnt/home   nfs      rw,soft  0     0
   ...
    
por 27.10.2013 / 19:49
0

(eu sei que é post antigo, mas ...)

desmontar o ponto de montagem 'preguiçoso':

umount -l -f / mount / piont

       -l, --lazy
          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.  (Requires kernel 2.4.11 or later.)

Isso desmontará o ponto de montagem obsoleto do NFS e a operação do servidor não será impedida pela montagem obsoleta do NFS.

Lembre-se de que você precisa montar manualmente o compartilhamento NFS quando for exibido novamente

    
por 18.06.2018 / 13:41

Tags