Gerador NFS
Crie entradas de montagem resilientes10.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.