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: 72.717 ]

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

Driver nVidia se sua placa tem chipset da SiS

Instalação personalizada com Debian

VMWare Server no Debian Linux 4.0 (Etch) (i386 e AMD64)

Conexão dial-up no Gnome usando o network-admin

Implementação de serviço de diretórios com OpenLDAP no CentOS 6.3

  
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