OTOthoTools

Gerador NFS

Crie entradas de montagem resilientes
Resultadofstab
10.20.0.15:/srv/shared  /mnt/shared  nfs  rw,hard,_netdev,nofail,x-systemd.automount,nfsvers=4.2,timeo=600,retrans=2  0  0
  • hard evita corrupção silenciosa de dados durante interrupções do servidor.
  • _netdev e automount do systemd evitam falhas de montagem no boot.

Introdução

O Gerador NFS produz uma linha fstab para um compartilhamento NFS com opções que tornam a montagem resiliente: hard em vez de soft, _netdev para o boot aguardar a rede, nofail para um compartilhamento ausente não bloquear o boot e x-systemd.automount para montagem sob demanda.

Montagens hard repetem as requisições até o servidor responder; montagens soft podem retornar erros que aplicações interpretam como falhas reais de E/S, por isso hard é a escolha recomendada para a maioria das cargas.

Objetivo

  • Gerar uma linha fstab correta e completa a partir de servidor, export, ponto de montagem e versão NFS.
  • Aplicar padrões orientados a produção: hard, _netdev, nofail, automount, timeo e retrans.
  • Avisar quando NFSv3 for escolhido, pois exige rpcbind e regras extras de firewall.

Entradas

  • Hostname ou IP do servidor NFS.
  • Caminho de export no servidor (por exemplo, /srv/shared).
  • Ponto de montagem local (por exemplo, /mnt/shared).
  • Versão NFS: 4.2, 4.1, 4 ou 3.

Como funciona

A ferramenta monta os seis campos do fstab: server:export como dispositivo, o ponto de montagem, o tipo de sistema de arquivos nfs, a lista de opções, 0 para dump e 0 para fsck pass.

A lista de opções é construída a partir das entradas: rw, hard, _netdev, nofail, x-systemd.automount, nfsvers=<versão>, timeo=600 e retrans=2. timeo e retrans ajustam quanto tempo o cliente espera e quantas vezes ele tenta antes de desistir.

Se NFSv3 for selecionado, um aviso é adicionado porque o NFSv3 depende de rpcbind e abre portas adicionais no firewall do servidor; NFSv4 é preferível quando o servidor suporta.

Exemplo testável

Experimente — a análise roda localmente no seu navegador.

Exemplo

Servidor: 10.20.0.15
Export:  /srv/shared
Montagem: /mnt/shared
Versão:  4.2

Saída esperada

10.20.0.15:/srv/shared  /mnt/shared  nfs  rw,hard,_netdev,nofail,x-systemd.automount,nfsvers=4.2,timeo=600,retrans=2  0  0
Resultado: nenhum problema crítico detectado.

Interpretando a saída

  • A linha gerada pode ser anexada ao /etc/fstab como está e depois montada com sudo mount -a.
  • Os achados bons confirmam a presença de hard e _netdev — essas duas opções evitam os dois modos de falha NFS mais comuns.
  • Se aparecer um aviso sobre NFSv3, verifique se o servidor suporta NFSv4 antes de aceitá-lo.

Riscos

  • Montagens hard nunca desistem: se o servidor desaparecer permanentemente, processos podem travar até o servidor voltar ou a montagem ser desfeita.
  • O automount adia a montagem até o primeiro acesso, mudando o comportamento de serviços que esperam o caminho no boot.
  • Colar uma linha gerada no /etc/fstab sem testar pode quebrar o boot de um servidor de produção.

Limitações

  • A ferramenta não testa conectividade, exports ou autenticação (por exemplo, NFSv4 Kerberos).
  • As opções são uma base sensata, não uma melhor prática universal — cargas de alta latência ou especiais podem precisar de valores diferentes de timeo/retrans.
  • Ela não gera entradas de /etc/exports para o lado do servidor.

Referências oficiais

FAQ

Por que hard em vez de soft?

Uma montagem soft pode retornar erro após um timeout mesmo quando o servidor está apenas lento, e aplicações costumam tratar esse erro como falha real de E/S. Montagens hard continuam tentando, o que é mais seguro para a integridade dos dados na maioria dos casos.

O que o nofail faz?

O nofail instrui o sistema a continuar o boot mesmo que essa montagem falhe, em vez de entrar no modo de emergência. É essencial para compartilhamentos opcionais.

O que é x-systemd.automount?

Faz o systemd montar o compartilhamento no primeiro acesso, em vez de no boot, para que um servidor lento ou indisponível não atrase a inicialização. O ponto de montagem existe imediatamente; a montagem real ocorre de forma preguiçosa.