Red Hat Training

A Red Hat training course is available for RHEL 8

4.6. Configuração do servidor NFS

Esta seção descreve a sintaxe e as opções de duas maneiras de configurar as exportações em um servidor NFS:

  • Edição manual do arquivo de configuração /etc/exports
  • Usando o utilitário exportfs na linha de comando

4.6.1. O arquivo de configuração /etc/exporta

O arquivo /etc/exports controla quais sistemas de arquivo são exportados para hosts remotos e especifica opções. Ele segue as seguintes regras de sintaxe:

  • As linhas em branco são ignoradas.
  • Para acrescentar um comentário, inicie uma linha com a marca hash (#).
  • Você pode enrolar longas linhas com uma contrabarra (\).
  • Cada sistema de arquivo exportado deve estar em sua própria linha individual.
  • Qualquer lista de hosts autorizados colocada após um sistema de arquivo exportado deve ser separada por caracteres de espaço.
  • As opções para cada um dos anfitriões devem ser colocadas entre parênteses diretamente após o identificador do anfitrião, sem nenhum espaço que separe o anfitrião do primeiro parêntese.
Entrada de exportação

Cada entrada para um sistema de arquivo exportado tem a seguinte estrutura:

export host(options)

Também é possível especificar múltiplos anfitriões, juntamente com opções específicas para cada anfitrião. Para isso, liste-os na mesma linha de uma lista delimitada por espaço, com cada nome de host seguido de suas respectivas opções (entre parênteses), como em:

export host1(options1) host2(options2) host3(options3)

Nesta estrutura:

export
O diretório que está sendo exportado
host
O anfitrião ou rede para a qual a exportação está sendo compartilhada
options
As opções a serem utilizadas para hospedar

Exemplo 4.1. Um simples arquivo /etc/exportação

Em sua forma mais simples, o arquivo /etc/exports especifica apenas o diretório exportado e os anfitriões autorizados a acessá-lo:

/exportado/directório bob.example.com

Aqui, bob.example.com pode montar /exported/directory/ a partir do servidor NFS. Como nenhuma opção está especificada neste exemplo, o NFS usa opções padrão.

Importante

O formato do arquivo /etc/exports é muito preciso, particularmente no que diz respeito ao uso do caráter espacial. Lembre-se de sempre separar os sistemas de arquivo exportados dos sistemas hospedeiros e hospedeiros uns dos outros com um caractere de espaço. Entretanto, não deve haver outros caracteres de espaço no arquivo, exceto nas linhas de comentário.

Por exemplo, as duas linhas a seguir não significam a mesma coisa:

/home bob.example.com(rw)
/home bob.example.com (rw)

A primeira linha permite apenas aos usuários do site bob.example.com o acesso de leitura e escrita ao diretório /home. A segunda linha permite aos usuários de bob.example.com montar o diretório como somente leitura (o padrão), enquanto o resto do mundo pode montá-lo como leitura/escrita.

Opções padrão

As opções padrão para uma entrada de exportação são:

ro
O sistema de arquivo exportado é somente leitura. Os hosts remotos não podem alterar os dados compartilhados no sistema de arquivo. Para permitir que os hosts façam mudanças no sistema de arquivo (ou seja, leitura e escrita), especifique a opção rw.
sync
O servidor NFS não responderá às solicitações antes que as alterações feitas por solicitações anteriores sejam gravadas em disco. Para habilitar as escritas assíncronas, em vez disso, especifique a opção async.
wdelay
O servidor NFS irá atrasar a gravação no disco se suspeitar que outra solicitação de gravação está iminente. Isto pode melhorar o desempenho, pois reduz o número de vezes que o disco deve ser acessado por comandos de gravação separados, reduzindo assim a sobrecarga de gravação. Para desativar isto, especifique a opção no_wdelay, que está disponível somente se a opção de sincronização padrão também for especificada.
root_squash

Isso impede que usuários root conectados remotamente (ao contrário de localmente) tenham privilégios de root; em vez disso, o servidor NFS atribui a eles o ID de usuário nobody. Isto efetivamente "esmaga" o poder do usuário root remoto para o usuário local mais baixo, impedindo possíveis escritas não autorizadas no servidor remoto. Para desabilitar o squashing da raiz, especifique a opção no_root_squash.

Para esmagar cada usuário remoto (incluindo a raiz), use a opção all_squash. Para especificar os IDs de usuário e grupo que o servidor NFS deve atribuir aos usuários remotos de um determinado host, use as opções anonuid e anongid, respectivamente, como em:

export host(anonuid=uid,anongid=gid)

Aqui, uid e gid são o número de identificação do usuário e o número de identificação do grupo, respectivamente. As opções anonuid e anongid permitem a criação de uma conta especial de usuário e grupo para usuários de NFS remoto para compartilhar.

Por default, as listas de controle de acesso (ACLs) são suportadas pelo NFS sob o Red Hat Enterprise Linux. Para desabilitar este recurso, especifique a opção no_acl ao exportar o sistema de arquivo.

Opções padrão e anuladas

Cada padrão para cada sistema de arquivo exportado deve ser explicitamente anulado. Por exemplo, se a opção rw não for especificada, então o sistema de arquivo exportado é compartilhado como somente leitura. O seguinte é uma linha de exemplo de /etc/exports que anula duas opções padrão:

/another/exported/directory 192.168.0.3(rw,async)

Neste exemplo, 192.168.0.3 pode montar /another/exported/directory/ ler e escrever, e todas as gravações em disco são assíncronas.