NFS Setup · 4 min read · Dec 26, 2025

Configurando um Servidor e Cliente NFS no Debian Wheezy

Este guia explica como configurar um servidor NFS e um cliente NFS no Debian Wheezy. NFS significa Network File System; através do NFS, um cliente pode acessar (ler, gravar) um compartilhamento remoto em um servidor NFS como se estivesse no disco rígido local. Neste Tutorial, vou mostrar duas exportações NFS diferentes, a exportação de um diretório do cliente que armazena arquivos como usuário nobody/nogroup sem preservar permissões de sistema de arquivos e uma exportação do diretório /var/www que preserva permissões e propriedade dos arquivos, conforme necessário em uma configuração de servidor de hospedagem.

1 Nota Preliminar

Estou usando dois sistemas Debian Wheezy aqui:

  • Servidor NFS: server.example.com, endereço IP: 192.168.0.100
  • Cliente NFS: client.example.com, endereço IP: 192.168.0.101

2 Instalando NFS

servidor:

No servidor NFS, executamos:

apt-get install nfs-kernel-server nfs-common

Então, criamos os links de inicialização do sistema para o servidor NFS e o iniciamos:

cliente:

No cliente, podemos instalar o NFS da seguinte forma (isso é na verdade o mesmo que no servidor):

apt-get install nfs-common

3 Exportando Diretórios no Servidor

servidor:

Gostaria de tornar os diretórios /home/client1 e /var/www acessíveis ao cliente para mostrar os dois modos de acesso diferentes do servidor NFS. O diretório /home/client1 é compartilhado no modo padrão, então todos os arquivos gravados neste diretório são armazenados como usuário nobody e grupo nogroup. Para o diretório /var/www, uso a opção no_root_squash que instrui o servidor NFS a preservar permissões e propriedade dos arquivos. Isso é, por exemplo, necessário quando você deseja exportar o diretório /var/www de um servidor web gerenciado com ISPConfig 3.

Primeiro, vou criar o diretório /home/client1

mkdir /home/client1  
chown nobody:nogroup /home/client1  
chmod 755 /home/client1

O diretório /var/www provavelmente já existe no seu servidor. Se não, então crie-o:

mkdir /var/www  
chown root:root /var/www  
chmod 755 /var/www

Agora devemos modificar /etc/exports onde “exportamos” nossos compartilhamentos NFS. Especificamos /home/client1 e /var/www como compartilhamentos NFS e dizemos ao NFS para fazer acessos a /home/client1 como usuário nobody (para saber mais sobre /etc/exports, seu formato e opções disponíveis, dê uma olhada em

man 5 exports

)

vi /etc/exports
/home/client1           192.168.0.101(rw,sync,no_subtree_check)
/var/www        192.168.0.101(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash)

(A opção no_root_squash faz com que /var/www seja acessado como root.)

Para aplicar as mudanças em /etc/exports, reiniciamos o servidor NFS do kernel

/etc/init.d/nfs-kernel-server restart

4 Montando os Compartilhamentos NFS no Cliente

cliente:

Primeiro, criamos os diretórios onde queremos montar os compartilhamentos NFS, por exemplo:

mkdir -p /mnt/nfs/home/client1  
mkdir -p /var/www

Se o diretório /var/www já existir no seu servidor, então pare o apache, renomeie o diretório e crie um novo diretório vazio como ponto de montagem

/etc/init.d/apache2 stop  
mv /var/www /var/www_bak  
mkdir -p /var/www

Depois, podemos montá-los da seguinte forma:

mount 192.168.0.100:/home/client1 /mnt/nfs/home/client1  
mount 192.168.0.100:/var/www /var/www

Agora você deve ver os dois compartilhamentos NFS nas saídas de

df -h
[root@client ~]# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/mapper/vg_server2-LogVol00  
                      9.7G  1.7G  7.5G  18% /  
tmpfs                 499M     0  499M   0% /dev/shm  
/dev/sda1            504M   39M  440M   9% /boot  
192.168.0.100:/home/client1   9.7G  1.7G  7.5G  19% /mnt/nfs/home/client1  
192.168.0.100:/var/www  
                      9.7G  1.7G  7.5G  19% /var/www  
[root@client ~]#

e

mount
[root@client ~]# mount  
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)  
proc on /proc type proc (rw)  
sysfs on /sys type sysfs (rw)  
devpts on /dev/pts type devpts (rw,gid=5,mode=620)  
tmpfs on /dev/shm type tmpfs (rw)  
/dev/sda1 on /boot type ext4 (rw)  
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)  
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)  
192.168.0.100:/home/client1 on /mnt/nfs/home/client1 type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)  
192.168.0.100:/var/www on /var/www type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)  
[root@client ~]#

5 Testando

No cliente, você pode agora tentar criar arquivos de teste nos compartilhamentos NFS:

cliente:

touch /mnt/nfs/home/client1/test.txt  
touch /var/www/test.txt

Agora vá até o servidor e verifique se você pode ver ambos os arquivos de teste:

servidor:

ls -l /home/client1/
[root@server ~]# ls -l /home/client1  
total 0  
-rw-r--r-- 1 nobody nogroup 0 Feb 02 16:58 test.txt  
[root@server ~]#
ls -l /var/nfs
[root@server ~]# ls -l /var/www  
total 0  
-rw-r--r-- 1 root root 0 Feb 02 16:58 test.txt  
[root@server ~]#

(Observe as diferentes propriedades dos arquivos de teste: o compartilhamento NFS /home/client1 é acessado como nobody / nogroup e é propriedade de nobody / nogroup; o compartilhamento /var/www é acessado como root, portanto /var/www/test.txt é propriedade do usuário e grupo root.)

6 Montando Compartilhamentos NFS na Inicialização

Em vez de montar os compartilhamentos NFS manualmente no cliente, você pode modificar /etc/fstab para que os compartilhamentos NFS sejam montados automaticamente quando o cliente inicializa.

cliente:

Abra /etc/fstab e adicione as seguintes linhas:

vi /etc/fstab
[...]  
192.168.0.100:/home/client1  /mnt/nfs/home/client1   nfs      rw,sync,hard,intr  0     0  
192.168.0.100:/var/www  /var/www   nfs      rw,sync,hard,intr  0     0

Em vez de rw,sync,hard,intr você pode usar diferentes opções de montagem. Para saber mais sobre as opções disponíveis, dê uma olhada em

man nfs

Para testar se sua modificação em /etc/fstab está funcionando, desmonte os compartilhamentos e execute mount -a:

umount /mnt/nfs/home/client1  
umount /var/www  
mount -a

Agora você deve ver os dois compartilhamentos NFS nas saídas de

df -h
[root@client ~]# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/mapper/vg_server2-LogVol00  
                      9.7G  1.7G  7.5G  18% /  
tmpfs                 499M     0  499M   0% /dev/shm  
/dev/sda1            504M   39M  440M   9% /boot  
192.168.0.100:/home/client1   9.7G  1.7G  7.5G  19% /mnt/nfs/home/client1  
192.168.0.100:/var/www  
                      9.7G  1.7G  7.5G  19% /var/www  
[root@client ~]#

e

mount
[root@client ~]# mount  
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)  
proc on /proc type proc (rw)  
sysfs on /sys type sysfs (rw)  
devpts on /dev/pts type devpts (rw,gid=5,mode=620)  
tmpfs on /dev/shm type tmpfs (rw)  
/dev/sda1 on /boot type ext4 (rw)  
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)  
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)  
192.168.0.100:/home/client1 on /mnt/nfs/home/client1 type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)  
192.168.0.100:/var/www on /var/www type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)  
[root@client ~]#

7 Créditos

Este Tutorial é baseado no Tutorial do Servidor NFS do Centos de Falko Timme.

8 Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.