Os próximos programas que necessitam ser executados são chamados mountd e nfsd. Porém, antes, é necessário editar outro arquivo. Desta vez o /etc/exports. Digamos que se deseje que o sistema de arquivos /mn/parolin/local, o qual está localizado na máquina parolin, seja disponibilizado para a máquina chamada batel. Deve-se então utilizar a seguinte configuração no arquivo /etc/exports em parolin:
/mn/parolin/local batel(rw)
As linhas acima fornecem a batel acesso de leitura e gravação (rw) para /mn/parolin/local. Ao invés de rw poderíamos informar ro, o qual fornece acesso somente para leitura e é o padrão quando este parâmetro não é informado. Há diversas opções que podem ser utilizadas e que serão discutidas juntamente com aspectos de segurança mais adiante. Elas estão descritas nas páginas de manual on-line do comando exports, a qual deve ser lida ao menos uma vez na vida. Há ainda formas otimizadas de se incluir diversas máquinas no arquivo exports. Pode-se por exemplo, usar grupos de rede caso se esteja utilizando NIS (ou NYS) (NIS foi conhecido como YP) e especificar sempre um domínio com caracteres de generalização, ou sub-redes IP como máquinas que têm permissão para montar algo. Porém é necessário considerar que poderá ser possível obter acesso ao servidor de forma não autorizada caso se utilize autorizações tão genéricas.
Nota: o arquivo exports não tem a mesma sintaxe que em outros ``Unices''. Há uma seção específica neste Como fazer sobre arquivos exports em outros sistemas.
Agora que configuramos o mountd (ou talvez ele seja chamado rpc.mountd) e o nfsd (o qual pode ser chamado rpc.nfsd), ambos irão ler o arquivo exports.
Caso se edite o /etc/exports deve-se estar seguro de que os programas nfsd e mountd fiquem cientes destas alterações. A forma tradicional é através da execução do comando exportfs. Muitas distribuições Linux não possuem o programa exportfs. Caso este seja o seu caso, pode-se instalar o seguinte programa na máquina local:
#!/bin/sh killall -HUP /usr/sbin/rpc.mountd killall -HUP /usr/sbin/rpc.nfsd echo re-exportando sistemas de arquivos
O programa acima deve ser salvo, por exemplo como /usr/sbin/exportfs e deve ser executado o comando chmod a+rx exportfs. Agora, toda vez que uma alteração for efetuada, deve-se executar o comando exportfs a seguir, com privilégios de superusuário.
Agora deve-se checar se mountd e nfsd estão sendo adequadamente executados. Inicialmente deve-se executar o comando rpcinfo -p. Ele deverá apresentar uma saída similar a:
programa versão protocolo porta 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100005 1 udp 745 mountd 100005 1 tcp 747 mountd 100003 2 udp 2049 nfs 100003 2 tcp 2049 nfs
Como se pode perceber, o portmapper anunciou os seus serviços, assim como mountd e nfsd.
Caso se obtenha uma mensagem similar a rpcinfo: não foi possível contatar o portmapper: RPC: Erro no sistema remoto - Conexão recusada ou algo similar, possivelmente o portmapper não esteja sendo executado. Caso se obtenha uma mensagem similar a Nenhum programa remoto registrado então, ou o portmapper não deseja falar com a máquina local ou existe algum erro. Pode-se finalizar nfsd, mountd e o portmapper e tentar reiniciá-los nesta ordem novamente.
Após verificar os serviços disponíveis segundo o portmapper, pode-se fazer uma checagem através do comando ps. O portmapper continuará a reportar um serviço, mesmo após o programa responsável ter sido finalizado com erro, por exemplo. Então um comando ps poderá ser a maneira mais simples de descobrir que programas estão efetivamente sendo executados.
Evidentemente, será necessário modificar os arquivos rc do sistema para inicializar o mountd e o nfsd, assim como o portmapper, quando o sistema operacional for carregado. É muito provável que estes programas já existam na máquina local e que se deva somente descomentar as seções adequadas ou ativá-los nos níveis de execução corretos.
Páginas de manual on-line que já devem ter sido visitadas até agora: portmap, mountd, nfsd, e exports.
Bem, caso tudo tenha sido feito exatamente como foi descrito aqui, já temos à disposição todo o conjunto de ferramentas necessárias para iniciar um cliente NFS.