quarta-feira, 28 de abril de 2010

Criando um NFS Server e conectando clientes nele.

Primeiro passo, instalar o NFS (salvo se você utilizar uma distribuição baseada no RedHat EL, que já vem com o pacote instalador por default).

Para instala-lo, basta digitar no terminal:

$sudo apt-get install nfs-server nfs-kernel-server nfs-client nfs-common

Feito isso, vamos as configurações:

Edite o arquivo: /etc/exports (este arquivo é onde você ira definir o que será compartilhado e com quem)

Um exemplo de um exports:

/home/SEU+USUARIO/PONTO+COMPARTILHADO 192.168.0.3(rw,root_squash,sync)

Entendendo a configuração:

o primeiro parâmetro a ser passado é o diretório que você deseja compartilhar pelo NFS
o segundo parâmetro é o IP/HOST que terá direito de montar este compartilhamento
o terceiro, são as opções de montagem, no exemplo acima temos:

rw - permite que tanto o cliente como o servidor escrevam no ponto de montagem
root_squash - mapeia as requisições do UID/GID 0 para o UID/GID anonimo
sync - responde as requisições somente após as mudanças serem enviadas.

Outros parâmetros de configuração, podem ser encontrados na man page do exports.

Uma vez configurado, para iniciar o servidor NFS faça:

$sudo /etc/init.d/nfs start

Jump of the cat

Já tive casos de lentidão com paginas php dentro de um NFS. Isso se da devido a má performance do gerenciador de lock do php.

Para resolver isso, basta iniciar o gerenciador de lock do próprio NFS

$sudo /etc/init.d/nfslock start

NFS Server inciado, vamos ao lado cliente.

No cliente, você possui duas opções de montagem. A primeira via mount e a segunda, pelo /etc/fstab.

Vamos supor que você pretenda montar o NFS Server no diretório NFS, que esta dentro do seu $HOME.

Faça:

$sudo mount -t nfs IP-DO-SERVIDOR-NFS:CAMINHO-DO-PONTO-DE-MONTAGEM LOCAL-DE-MONTAGEM

Algo como:

$sudo mount -t nfs 192.168.0.2:/home/usuario/ponto_de_montagem /home/usuario/NFS

Agora pelo /etc/fstab

Edite este arquivo, adicionando a montagem da seguinte maneira:

IP-DO-SERVIDOR-NFS:CAMINHO-DO-PONTO-DE-MONTAGEM LOCAL-DE-MONTAGEM nfs

Ex:

192.168.0.2:/home/usuario/ponto_de_montagem /home/usuario/NFS nfs

Uma vez salvo o arquivo, execute:

$sudo mount -a (este comando irá ler o arquivo /etc/fstab e irá montar as partições que não estão montadas)

Existe uma gama de opções de otimizações que podem ser utilizadas dentro do fstab. Estas otimizações / especificações podem ser encontradas na manpage do mount.

Nenhum comentário:

Postar um comentário