Compartilhando diretórios em rede com o NFS

Este artigo trata da configuração do NFS (Network File System) tanto no servidor quanto nas máquinas cliente. Com ele será possível compartilhar o diretório de projetos do servidor por exemplo, para as estações Linux de sua rede.

[ Hits: 73.480 ]

Por: Fabio Willian Murashima em 03/04/2004


O que é NFS



Umas das maiores facilidades disponibilizadas pelos serviços de rede é o compartilhamento de arquivos e este é realizado através de sistemas de arquivos em rede. No Linux, o sistema de arquivos em rede padrão é o NFS (Network File System), que foi desenvolvido pela Sun.

Com um sistema de arquivos em rede, qualquer operação com arquivos executada por um programa em uma máquina, é enviada pela rede para outro computador. Esse procedimento faz o programa "pensar" que todos os arquivos encontram-se no mesmo equipamento onde ele está sendo executado. Isso torna o compartilhamento de informações muito simples, já que não requer nenhuma modificação nos programas utilizados.

Configurando o servidor


O primeiro passo é editar o arquivo /etc/exports, nele deverão ser colocados o diretório do servidor que vai ser compartilhado com a máquina cliente, o número do IP da máquina que estará acessando o servidor e por fim as opções de segurança. Use seu editor de textos preferido e vamos ao exemplo:

# vi /etc/exports

/home/willianrp 192.168.0.2(rw)

Traduzindo:
  • /home/willianrp é o diretório do servidor que vai ser compartilhado com a máquina cliente.
  • 192.168.0.2 é o IP da máquina cliente.
  • e finalmente o (rw) é a permissão dada à maquina cliente, no caso read and write.

Agora salve o arquivo e saia. Em seguida digite:

# exportfs Com esse comando, seu arquivo de configuração /etc/exports será lido e o kernel atualizado com as mudanças realizadas.

Inicie os servidores em /etc/init.d:

# ./portmap start
# ./nfs start


Agora vamos à configuração da máquina cliente.

Configurando o cliente


Crie um diretório como no exemplo a seguir, no caso utilizando um diretório com o nome de público (você pode nomear com um nome de sua preferência):

# mkdir /publico Neste caso foi criado o diretório /publico. Agora vamos montar o diretório a ser compartilhado:

# mount -t nfs 192.168.0.2:/home/willianrp/ /publico/

Pronto, o diretório já está montado, agora é só acessá-lo:

# cd /publico
# ls


Seu servidor NFS está funcionando e pronto para ser usado.

NOTA: Essa configuração foi feita por mim utilizando como servidor o Conectiva Linux 9 e na máquina cliente Fedora Core 1.

Espero ter ajudado a todos com essa contribuição ao site.

Viva o Linux!!!

   

Páginas do artigo
   1. O que é NFS
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando o VMWare Server no Ubuntu 7.04 (e/ou similares)

Configurando vídeo no Linux usando frame buffer

Local Web Server visível na Internet com DynDNS

Tutorial de instalação e pós-instalação do openSUSE Leap 42.2

Instalando o Debian (ilustrado)

  
Comentários
[1] Comentário enviado por JuNiOx em 03/04/2004 - 02:28h

veja também: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=613

[2] Comentário enviado por _simmons_ em 04/04/2004 - 12:39h

E pra quem usa Slackware é só dar o comando:

/etc/rc.d/rc.nfsd start. =)

Abraços,

André Michi

[3] Comentário enviado por removido em 04/04/2004 - 20:52h

Se vc quiser alterar seu arquvio /etc/exports, e aplicar as mudanças sem precisar restartar nenhum serviço digite somente exportfs -rs

[4] Comentário enviado por removido em 04/04/2004 - 20:54h

ops desculpem é exportfs -ra

[5] Comentário enviado por ygorth em 07/04/2004 - 15:08h

Meio imcompleto mais ta valendo!

[6] Comentário enviado por aldeberg em 30/06/2004 - 10:30h

para eu montar uma rede linux em pc 486 é necessario eu ter o windows, ou eu só posso ter o linux?

[7] Comentário enviado por dedidavid em 27/07/2004 - 17:54h

Tentei fazer com o home de dois servidores e as permições ficaram totalmente descassetadas!!! vc tem alguma sujestao?

[8] Comentário enviado por [dt.Sl4cK*] em 13/07/2006 - 13:51h

Eis um grande problema amigo.. NFS + permissões.. jah usei com NIS e tudo mais e acabei optando em utilizar o samba pelas facilidades com permissões. De qualquer forma seria interessante se pudessem colocar algo mais profundo a respeito.

[9] Comentário enviado por korvoman em 03/10/2006 - 18:38h

Para o cliente não precisar de montar toda vez o nfs.É inserir estas linhas no /etc/fstab, no meu caso foi esta :

10.2.11.161:/home/korvo/arquivos /mnt nfs defaults 0 0

[10] Comentário enviado por leandrobhbr em 04/05/2007 - 11:34h

tem um erro

# mount -t nfs 192.168.0.2:/home/willianrp/ /publico/

teria de ser assim


# mount -t nfs ipservidor:/home/willianrp/ /publico/

como vc especificou no artigo 192.168.0.2 é o ip do cliente

[11] Comentário enviado por cytron em 11/05/2009 - 16:15h

Uma coisa que todo artigo de nfs esquece de mencionar é que em permissões só sem tem duas poções para liberar rw:

colocar rw no compartilhamento para qualquer um poder gravar

ou

ter um user no servidor, daí coloca este user no gid do compartilhamento ou sendo o próprio dono, dependendo do que se queira compartilhar.

[12] Comentário enviado por edupopov em 27/08/2010 - 09:56h

No caso... estou utilizando o OpenSuse.

E imagine que preciso colocar a permissão para um range inteiro de IP.
Tentei colocar no arquivo dessa maneira abaixo:

/home/edupopov 192.168.0.0/24(rw)

Mas não funcionou.

Alguém sabe como fazer com que o compartilhamento fique disponível para todo o range sem que eu tenha que digitar IP por IP?

Valew gente.

[13] Comentário enviado por djoseman em 15/08/2012 - 09:15h

Olá rapa!

Tenho um OpenSuSE 11.1 com IP 172.30.110.5 e um CentOS 6.2 com IP 172.30.110.15, configurei o arquivo /etc/exports no CentOS da seguinte maneira:

/home/share 172.30.110.5(rw, sync,, no_root_squash) e quando vou tentar montar o compartilhamento no OpenSuSE uso o seguinre comando:

srvsuse:~# mount -t nfs 172.30.110.15:/home/share /home/publico

Então me retorna a seguinte mensagem:

mount.nfs: mount to NFS server ´172.30.110.15:/home/share´ failed: System Error: No route to host

Alguém sabe o pode ser?

[14] Comentário enviado por willianrp em 16/08/2012 - 17:02h

Olá djoseman , vc está utilizando uma rede Classe B ( privada ) ?

[15] Comentário enviado por VitorTakami em 14/09/2015 - 09:01h

Como fazer para compartilhar entre redes diferentes ?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts