Compartilhamento de Arquivos para clientes Unix NFS (Network File System) O NFS ou Network File System - sistema de arquivos em rede - permite que clientes acessem arquivos compartilhados em um servidor como se fossem arquivos locais. Com isso, podemos por exemplo guardar arquivos de instalação de programas em um servidor e acessá-los pela rede, facilitando a operação e economizando espaço em disco nos clientes. Outra aplicação prática é guardar os diretórios home dos usuários em um único servidor, e em qualquer máquina que o usuário logar-se terá os mesmos arquivos. Também pode-se compartilhar drives de CDROM ou qualquer outro dispositivo de armazenamento. O NFS foi originalmente criado pela Sun Microsystems nos anos 80, e é definido pela RFC1094.
Daemons usados pelo NFS: nfsd - Processa os pedidos dos clientes NFS. mountd - Faz a entrega dos pedidos que o nfsd passa a ele. portmap - É o daemon portmapper, que permite que os clientes descubram que porta o servidor NFS está usando. Para que tais daemons sejam inicializados no servidor, é necessário inserir as seguintes linhas ao arquivo /etc/rc.conf: portmap_enable="YES" nfs_server_enable="YES" mountd_flags="-r" No cliente, deve ser adicionada a seguinte linha ao /etc/rc.conf: nfs_client_enable="YES" O arquivo /etc/exports, no servidor, especifica que arquivos devem ser compartilhados com os clientes. Cada linha especifica um diretório, quem pode acessá-lo e também pode ser especificado o tipo de acesso desejado. Por exemplo, para compartilhar o drive de CDROM com todas as máquinas da rede 192.168.0.0/16, a seguinte linha deve ser inserida:
/cdrom -ro -network 192.168 -mask 255.255.0.0 O parâmetro -ro especifica a permissão read-only, ou somente leitura. Para compartilhar o /home para as máquinas 192.168.0.2, 192.168.0.3 e 192.168.0.4, insira a seguinte linha:
/home 192.168.0.2 192.168.0.3 192.168.0.4 Para compartilhar o diretório /teste para a máquina 192.168.0.5 e deixar ela acessar esse diretório como root (se o root na máquina cliente montar o /teste do servidor poderá acessá-lo com todos os poderes de root), basta inserir a seguinte linha: /teste -maproot=root 192.168.0.5 Para compartilhar os diretórios /usr/src e /usr/ports com a máquina teste.exemplo.org, insira a seguinte linha: /usr/src /usr/ports teste.exemplo.org Para compartilhar o diretório /teste2 com todo mundo e dar permissão de somente leitura, adicione a seguinte linha: /teste2 -ro Com esses exemplos, pode-se ter uma boa idéia de qual é o formato do arquivo /etc/exports. Para maiores detalhes, veja o manual com o comando "man exports". Depois de configurar o NFS, é necessário reiniciar a máquina. Se apenas foi modificado o arquivo /etc/exports, basta reiniciar o mountd para que as alterações entrem em vigor: # kill -HUP `cat /var/run/mountd.pid` ou simplesmente # killall -HUP mountd Para montar um diretório compartilhado, utiliza-se no cliente o comando mount, no seguinte formato: # mount servidor:/compartilhamento /mountpoint Por exemplo, para montar o /home do servidor 192.168.0.1 no diretório /mnt local, basta digitar: # mount 192.168.0.1:/home /mnt Se for necessário que algum compartilhamento seja montado automaticamente no cliente, no momento da inicialização, basta adicioná-lo ao arquivo /etc/fstab. Seguindo o mesmo exemplo acima, deveríamos adicionar a seguinte linha ao /etc/fstab: 192.168.0.1:/home /mnt nfs rw 0 0 Para maiores detalhes do formato do arquivo, man fstab. Há um utilitário para visualizar estatísticas sobre as atividades do servidor NFS, fica em /usr/bin/nfsstat. Ele mostra um relatório bem detalhado se invocado sem parâmetros. Se for utilizado o comando "nfsstat -w 2" teremos um relatório resumido, e será atualizado a cada 2 segundos, constatemente (obviamente o valor pode ser alterado). Referencia: http://www2.unijui.tche.br/~heini/freebsd/nfs.html
|