Sumário
Resumo
Distribuir e compartilhar sistemas de arquivos em uma rede é uma tarefa comum em ambientes corporativos. O reconhecido sistema de arquivos de rede (NFS) funciona com o NIS, o protocolo de yellow pages. Para um protocolo mais seguro que funcione com o LDAP e também possa usar Kerberos, marque NFSv4. Juntamente com o pNFS, é possível eliminar gargalos no desempenho.
O NFS com o NIS torna uma rede transparente para o usuário. Com o NFS, é possível distribuir sistemas de arquivos arbitrários pela rede. Com a configuração adequada, os usuários sempre ficam no mesmo ambiente, independentemente do terminal que estejam usando.
Veja a seguir os termos usados no módulo do YaST.
Um diretório exportado por um servidor NFS, que os clientes podem integrar a seus sistemas.
O cliente NFS é um sistema que usa serviços NFS de um servidor NFS pelo protocolo NFS (Network File System – Sistema de Rede de Arquivos). O protocolo TCP/IP já está integrado ao kernel do Linux; não há necessidade de instalar software adicional.
O servidor NFS fornece serviços NFS aos clientes. Um servidor em execução depende dos seguintes daemons: nfsd (worker), idmapd (mapeamentos de nome de grupo e usuário para IDs e vice versa), statd (bloqueio de arquivos) e mountd (solicitações de montagem).
NFS Paralelo, o protocolo de extensão do NFSv4. Qualquer cliente do pNFS pode acessar diretamente os dados em um servidor NFS.
O software do servidor NFS não faz parte da instalação padrão. Se você configurar um servidor NFS conforme descrito na Seção 27.3, “Configurando o servidor NFS”, receberá automaticamente um aviso solicitando para instalar os pacotes necessários. Se preferir, instale o pacote nfs-kernel-server com o YaST ou o zypper.
Assim como o NIS, o NFS é um sistema cliente/servidor. Entretanto, uma máquina pode ser ambos—pode fornecer sistemas de arquivos pela rede (exportar) e montar sistemas de arquivos a partir de outros hosts (importar).
É possível configurar um servidor NFS usando o YaST ou manualmente. Para autenticação, o NFS também pode ser combinado com o Kerberos.
Para usar a autenticação Kerberos para o NFS, é preciso que a segurança GSS esteja habilitada. Selecione na caixa de diálogo inicial Servidor NFS do YaST. É preciso ter um servidor Kerberos ativo para usar esse recurso. O YaST não configura o servidor, apenas usa a funcionalidade fornecida. Se você quiser usar a autenticação Kerberos além da configuração do YaST, conclua pelo menos as etapas seguintes antes de executar a configuração do NFS:
Verifique se o servidor e o cliente estão no mesmo domínio Kerberos. Eles precisam acessar o mesmo servidor KDC (Key Distribution Center — Centro de Distribuição de Chaves) e compartilhar o arquivo krb5.keytab (o local padrão em qualquer máquina é /etc/krb5.keytab). Para obter mais informações sobre o Kerberos, consulte o Capítulo 6, Network Authentication with Kerberos (↑Security Guide (Guia de Segurança)).
Inicie o serviço gssd no cliente com rcgssd start.
Para obter mais informações sobre como configurar o NFS que usa Kerberos, consulte os links na Seção 27.5, “Para obter mais informações”.
Para configurar seu host como cliente NFS, você não precisa instalar software adicional. Todos os pacotes necessários são instalados por padrão.
Usuários autorizados podem montar diretórios NFS de um servidor NFS na árvore de arquivos local usando o módulo de cliente NFS do YaST. Proceda da seguinte maneira:
Procedimento 27.1. Importando diretórios NFS¶
Inicie o módulo cliente NFS do YaST.
Clique em na guia . Digite o nome de host do servidor NFS, o diretório a ser importado e o ponto de montagem desse diretório localmente.
Habilite na guia , se você usa um Firewall e deseja permitir o acesso de computadores remotos ao serviço. O status do firewall é mostrado próximo à caixa de seleção.
Ao usar NFSv4, verifique se a caixa de seleção está marcada e se o inclui o mesmo valor usado pelo servidor NFSv4. O domínio padrão é localdomain.
Clique em para gravar as mudanças.
A configuração é gravada em /etc/fstab e os sistemas de arquivos especificados são montados. Quando você iniciar o cliente de configuração do YaST posteriormente, ele também lerá a configuração existente desse arquivo.
O pré-requisito para importar os sistemas de arquivos manualmente de um servidor NFS é um mapeador de portas RPC em execução. Comece digitando rcrpcbind start enquanto usuário root. Em seguida, os sistemas de arquivos remotos podem ser montados no sistema de arquivos como partições locais usando mount:
mounthost:remote-pathlocal-path
Para importar os diretórios de usuário da máquina do nfs.example.com, por exemplo, use:
mount nfs.example.com:/home /home
O daemon autofs pode ser usado para montar sistemas de arquivos remotos automaticamente. Adicione a seguinte entrada ao seu arquivo /etc/auto.master:
/nfsmounts /etc/auto.nfs
Agora, o diretório /nfsmounts atuará como raiz para todas as montagens NFS no cliente se o arquivo auto.nfs for preenchido adequadamente. O nome auto.nfs foi escolhido por mera conveniência; você pode escolher qualquer nome. Adicione entradas ao auto.nfs para todas as montagens NFS da seguinte maneira:
localdata -fstype=nfs server1:/data nfs4mount -fstype=nfs4 server2:/
Ative as configurações com rcautofs start enquanto root. Neste exemplo, /nfsmounts/localdata, o diretório /data do server1, é montado com NFS e /nfsmounts/nfs4mount, do server2, é montado com NFSv4.
Se o arquivo /etc/auto.master for editado enquanto o serviço autofs estiver em execução, o automontador deverá ser reiniciado com rcautofs restart para que as mudanças tenham efeito.
/etc/fstab manualmente¶
Uma entrada de montagem típica do NFSv3 em /etc/fstab tem aparência semelhante a esta:
nfs.example.com:/data /local/path nfs rw,noauto 0 0
As montagens NFSv4 também podem ser adicionadas ao arquivo /etc/fstab. Para essas montagens, use nfs4 em vez de nfs na terceira coluna e verifique se o sistema de arquivos remoto aparece como / após o nfs.example.com: na primeira coluna. Uma linha de amostra de uma montagem NFSv4 em /etc/fstab tem aparência semelhante a esta:
nfs.example.com:/ /local/pathv4 nfs4 rw,noauto 0 0
A opção noauto impede que o sistema de arquivos seja montado automaticamente na inicialização. Se desejar montar o respectivo sistema de arquivos manualmente, é possível abreviar o comando de montagem especificando apenas o ponto de montagem:
mount /local/path
Observe que, se você não digitar a opção noauto, os scripts de inicialização do sistema gerenciarão a montagem dos sistemas de arquivos na inicialização.
NFS é um dos protocolos mais antigos, desenvolvido nos anos 80. Em geral, o NFS é suficiente para compartilhar arquivos pequenos. Entretanto, para transferir arquivos grandes ou quando um número elevado de clientes precisa acessar os dados, o servidor NFS torna-se um gargalo e afeta significativamente o desempenho do sistema. Isso ocorre porque os arquivos aumentam de tamanho rapidamente, mas a velocidade relativa do Ethernet não consegue acompanhar esse aumento.
Quando você solicita um arquivo de um servidor NFS “normal”, o servidor procura os metadados do arquivo, coleta todos os dados e os transfere pela rede até o cliente. No entanto, o gargalo no desempenho torna-se aparente independentemente do tamanho dos arquivos:
Com os arquivos pequenos, a maior parte do tempo é gasta para coletar os metadados
Com os arquivos grandes, a maior parte do tempo é gasta para transferir os dados do servidor para o cliente
O pNFS, ou NFS paralelo, supera essa limitação, pois ele separa os metadados do sistema de arquivos do local dos dados. Para isso, o pNFS requer dois tipos de servidores:
Um servidor de controle ou de metadados que controla todo o tráfego que não seja de dados
Um ou mais servidor(es) de armazenamento que armazena(m) os dados
Os servidores de metadados e de armazenamento formam um único servidor NFS lógico. Para o cliente ler ou gravar, o servidor de metadados informa ao cliente NFSv4 qual servidor de armazenamento deve ser usado para acessar os pacotes de arquivos. O cliente pode acessar os dados diretamente no servidor.
O SUSE Linux Enterprise suporta pNFS apenas no cliente.
Siga a descrição em Procedimento 27.1, “Importando diretórios NFS”, mas clique na caixa de seleção e, opcionalmente, em . O YaST executa todas as etapas necessárias e grava todas as opções exigidas no arquivo /etc/exports.
Para começar, consulte a Seção 27.4.2, “Importando sistemas de arquivos manualmente”. A maior parte da configuração é feita pelo servidor NFSv4. Para o pNFS, a única diferença é adicionar a opção minorversion e o servidor de metadados MDS_SERVER ao comando mount:
mount -t nfs4 -o minorversion=1MDS_SERVERMOUNTPOINT
Para ajudar na depuração, mude o valor no sistema de arquivos /proc:
echo 32767 > /proc/sys/sunrpc/nfsd_debug echo 32767 > /proc/sys/sunrpc/nfs_debug
Além das páginas de manual de exports, nfs e mount, há informações disponíveis sobre como configurar servidores e clientes NFS em /usr/share/doc/packages/nfsidmap/README. Para mais documentações online, consulte os seguintes sites na Web:
A documentação técnica online encontra-se no SourceForge.
Para obter instruções sobre como configurar o NFS que usa Kerberos, consulte o documento NFS Version 4 Open Source Reference Implementation (Implementação da referência de código-fonte aberto do NFSv4).
Se você tiver dúvidas sobre o NFSv4, consulte as Perguntas frequentes do Linux NFSv4.