By Marcos Oliveira,

Compartilhamento via NFS

Nesse post vou mostrar como compartilhar uma pasta no Linux para acesso via rede por comando, o processo é bem simples.Esse acesso será baseado em NFS, não tem nada a ver com o Samba, isso é pra compartilhamento entre duas ou mais máquinas Linux(de Linux pra Linux), mais pra frente vou explicar via samba, mas por enquanto isso aqui é mais importante.

NFS é um protocolo de sistema de arquivos para compartilhamento entre arquivos e diretórios entre computadores conectados em rede. É com NFS que é feito o acesso, existem outras formas, mas certifique-se que essa é a mais simples e a melhor.

Primeiramente temos de ter dois pacotes instalados, precisa ser root

  • 1 - nfs-kernel-server —- que deve ser instalado no Server(a máquina que compartilhará o arquivo ou a pasta). Para instalá-lo no Debian e similares
apt-get install nfs-kernel-server

Convém também instalar o portmap, caso não esteja instalado

apt-get install portmap
  • 2 - nfs-common —- que deve ser instalado no Client(máquina que acessará a tal pasta ou arquivo).

Para instalá-lo no Debian e similares

apt-get install nfs-common
  • No Server, precisamos informar qual a pasta será compartilhada e quais as permissões, para isso edite o arquivo
vim /etc/exports
  • Após as linhas iniciais e comentado com #(tralha), crie uma nova linha sem #(tralha) e informe o endereço da pasta no PC e as permissões do mesmo, exemplo
/home/usuario/pasta_a_ser_compartilhada 192.168.1.102(rw,async)
  • Ou seja, o caminho da pasta;”rw” permissão de leitura(r) e escrita(w); o item async permite que o NFS transfira arquivos de forma “assíncrona”, sem precisar esperar pela resposta do cliente; e o IP que pode acessar a pasta que foi compartilhada.Depois de adicionar a linha, salve o arquivo, lembrando que caso você deseje liberar uma faixa de ips, basta usar o (asterisco)__, exemplo: __192.168.1., todos dessa faixa poderão acessar, ou até mesmo utilizar nome da Estação.

Para aplicar as alterações no arquivo exports para que o mesmo possa ser lido pelo Kernel, é necessario, exportar e reiniciar o serviço, reinicie também o Portmaps, com os comando

exportfs -ra
/etc/init.d/nfs-kernel-server restart
/etc/init.d/portmap restart

Agora vamos no cliente(máquina que acessará a pasta).Para isso iremos precisar montar a pasta compartilhada da rede, então nada melhor do que você criar uma pasta para receber a montagem, então crie no local onde você deseja essa pasta, exemplo

mkdir /home/usuario/nome_da_pasta

E então montamos a pasta compartilhada dentro da que criamos com o seguinte comando

mount -t nfs 192.168.1.101:/home/server/pasta_compartilhada /home/cliente/pasta_criada

Ou seja, a opção (-t) do mount informa o tipo, e especificamos o tipo com o nome do tipo que é “nfs”, depois informamos o IP que está a pasta compartilhada(o Server) e o local onde montaremos essa pasta, endeço no cliente.

Caso não consiga o acesso, lembre-se de dar permissões locais com o “chmod“.Se seu PC pegou um IP via DHCP diferente do que você permitiu no “exports”, você pode alterálo com o seguinte comando

ifconfig eth0 192.168.1.102/16 dev eth0

Note que o ip fica a seu critério e o /16 é a mascara 255.255.0.0 na tabela, se desejar especificar um gateway, utilize

route add default gw 192.168.1.1 netmask 255.255.0.0 dev eth0

Veja um vídeo sobre NFS

Clique Aqui para Ver o Vídeo

Curso Extremamente Avançado em Shell Script Bash

Você irá descobrir técnicas avançadas de escrever em Shell Script. Como criar instaladores para distribuições Linux, Animações, Documentações, além de tudo sobre Processos em sistemas tipo UNIX, detalhes sobre Comandos Avançados e Muito Mais !