Todas as opções de montagem do NFS têm pontos positivos e negativos.
-
bg
significa que, quando você tentamount
do sistema de arquivos (geralmente durante a inicialização do sistema), se o servidor não responder a tempo, a montagem se separa de um processo executado em segundo plano e repete montar.Se você não usar a opção
bg
,mount
tentará novamente e não sairá (nem continuará montando outros sistemas de arquivos se você usoumount -a
) até que a montagem seja bem-sucedida ou falhe.Se você precisar montar um sistema de arquivos de um servidor que geralmente está inativo e não quiser que a inicialização do sistema seja atrasada, use a opção
bg
(ou um montador automático).A desvantagem da opção
bg
é que o sistema pode inicializar sem ter montado o sistema de arquivos remoto, o que pode causar falhas nos aplicativos que desejam usar esse sistema de arquivos (ou pior, preencher o disco local com coisas que foram destinado a ser gravado no sistema de arquivos remoto).Portanto, usar
bg
é uma escolha que você pode fazer. -
hard
esoft
se aplicam depois que o sistema de arquivos é montado.Se o servidor remoto falhar ou estiver inacessível, uma montagem física continuará tentando novamente a solicitação de E / S, indefinidamente.
Uma montagem soft retornará um erro para o aplicativo e, geralmente, o aplicativo tratará isso como um erro irrecuperável, como se uma unidade de disco local tivesse sido desligada. Se o próprio executável do aplicativo estiver no sistema de arquivos remoto que foi instalado de forma simples e se tornar inacessível, quando o kernel local precisar obter uma página do sistema de arquivos remoto, o aplicativo será eliminado.
Portanto, a escolha é sua: quando um servidor remoto (ou sua rede) fica inoperante, você deseja que os programas falhem ou deseja que eles repitam o i / o indefinidamente até que o controle remoto seja atingido novamente?
-
com uma montagem rígida, se o servidor remoto desistir, qualquer programa que use o sistema de arquivos remoto não será interrompido por sinais, da mesma forma que os programas que usam um disco local não podem ser interrompidos durante minúsculo) quantidade de tempo que leva para fazer disco i / o. Isto pode frustrar os usuários, porque seus programas irão travar e eles não podem matá-los com control-C . Se você quiser interromper os programas que estão aguardando a E / S do NFS, inclua a opção
intr
mount. Geralmente, é seguro usar a opçãointr
; lembre-se de que isso pode fazer com que os programas vejam erros de E / S (o erroEINTR
) quando forem interrompidos.
Uma recomendação que tenho: ao usar sistemas de arquivos NFS com servidores remotos que podem ficar inativos, não monte o sistema de arquivos em um diretório em /
(como /test
), ou mesmo em qualquer diretório no mesmo nível de um diretório que muitas pessoas usam, como /home/username
. Isso ocorre porque pwd
ou sua biblioteca C equivalente percorre a árvore de diretórios, fazendo stat
s nos diretórios. Se um aplicativo fizer um stat
em um ponto de montagem NFS montado de forma rígida que não esteja respondendo, ele será interrompido. Esta é a principal causa de reclamações de usuários sobre o NFS: eles não podem logar porque o seu shell faz um pwd
e algum sistema de arquivos NFS que eles nem precisam usar está inativo. boa razão para usar um montador automático de diretórios home.
Esta é a nossa melhor prática para montagens NFS:
- use o montador automático
- se você não puder, monte cada sistema de arquivos remoto em / n / remoteservername / filesystemname com as opções
hard,intr
. - / n e / n / remoteservername são diretórios locais que nunca são pontos de montagem do NFS.
- configure
updatedb
ou qualquer outra coisa que examine a árvore de diretórios inteira para não procurar em/n
.