NFS Setup · 4 min read · Dec 26, 2025

Configurando Um Servidor E Cliente NFS No Debian Lenny

Configurando Um Servidor E Cliente NFS No Debian Lenny

Versão 1.0
Autor: Falko Timme

Este guia explica como configurar um servidor NFS e um cliente NFS no Debian Lenny. NFS significa Network File System; através do NFS, um cliente pode acessar (ler, escrever) um compartilhamento remoto em um servidor NFS como se estivesse no disco rígido local.

Não dou nenhuma garantia de que isso funcionará para você!

1 Nota Preliminar

Estou usando dois sistemas Debian 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 portmap

cliente:

No cliente, podemos instalar o NFS da seguinte forma:

apt-get install nfs-common portmap

3 Exportando Diretórios No Servidor

servidor:

Gostaria de tornar os diretórios /home e /var/nfs acessíveis ao cliente; portanto, devemos “exportá-los” no servidor.

Quando um cliente acessa um compartilhamento NFS, isso normalmente acontece como o usuário nobody. Normalmente, o diretório /home não é de propriedade de nobody (e não recomendo mudar sua propriedade para nobody!), e como queremos ler e escrever em /home, informamos ao NFS que os acessos devem ser feitos como root (se nosso compartilhamento /home fosse somente leitura, isso não seria necessário). O diretório /var/nfs não existe, então podemos criá-lo e mudar sua propriedade para nobody e nogroup:

mkdir /var/nfs  
chown nobody:nogroup /var/nfs

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

man 5 exports

)

vi /etc/exports

| # /etc/exports: a lista de controle de acesso para sistemas de arquivos que podem ser exportados # para clientes NFS. Veja exports(5). # # Exemplo para NFSv2 e NFSv3: # /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Exemplo para NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check) # /home 192.168.0.101(rw,sync,no_root_squash,no_subtree_check) /var/nfs 192.168.0.101(rw,sync,no_subtree_check) |

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

Sempre que modificamos /etc/exports, devemos executar

exportfs -a

depois para tornar as alterações efetivas.

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  
mkdir -p /mnt/nfs/var/nfs

Depois, podemos montá-los da seguinte forma:

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

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

df -h
client:~# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/mapper/vg0-root   19G  676M   17G   4% /  
tmpfs                 253M     0  253M   0% /lib/init/rw  
udev                   10M   80K   10M   1% /dev  
tmpfs                 253M     0  253M   0% /dev/shm  
/dev/sda1             471M   20M  427M   5% /boot  
192.168.0.100:/home    29G  684M   27G   3% /mnt/nfs/home  
192.168.0.100:/var/nfs  
                       29G  684M   27G   3% /mnt/nfs/var/nfs  
client:~#

e

mount
client:~# mount  
/dev/mapper/vg0-root on / type ext3 (rw,errors=remount-ro)  
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)  
proc on /proc type proc (rw,noexec,nosuid,nodev)  
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)  
udev on /dev type tmpfs (rw,mode=0755)  
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)  
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)  
/dev/sda1 on /boot type ext3 (rw)  
192.168.0.100:/home on /mnt/nfs/home type nfs (rw,addr=192.168.0.100)  
192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,addr=192.168.0.100)  
client:~#

5 Testando

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

cliente:

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

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

servidor:

ls -l /home/
server:~# ls -l /home/  
total 4  
drwxr-xr-x 2 administrator administrator 4096 2009-02-16 13:18 administrator  
-rw-r--r-- 1 root          root              0 2009-03-12 17:08 test.txt  
server:~#
ls -l /var/nfs
server:~# ls -l /var/nfs  
total 0  
-rw-r--r-- 1 nobody nogroup 0 2009-03-12 17:08 test.txt  
server:~#

(Observe as diferentes propriedades dos arquivos de teste: o compartilhamento NFS /home é acessado como root, portanto /home/test.txt é de propriedade de root; o compartilhamento /var/nfs é acessado como nobody, portanto /var/nfs/test.txt é de propriedade de nobody.)

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 /mnt/nfs/home nfs rw,sync,hard,intr 0 0 192.168.0.100:/var/nfs /mnt/nfs/var/nfs 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, reinicie o cliente:

reboot

Após a reinicialização, você deve encontrar os dois compartilhamentos NFS nas saídas de

df -h
client:~# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/mapper/vg0-root   19G  676M   17G   4% /  
tmpfs                 253M     0  253M   0% /lib/init/rw  
udev                   10M   80K   10M   1% /dev  
tmpfs                 253M     0  253M   0% /dev/shm  
/dev/sda1             471M   20M  427M   5% /boot  
192.168.0.100:/home    29G  684M   27G   3% /mnt/nfs/home  
192.168.0.100:/var/nfs  
                       29G  684M   27G   3% /mnt/nfs/var/nfs  
client:~#

e

mount
client:~# mount  
/dev/mapper/vg0-root on / type ext3 (rw,errors=remount-ro)  
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)  
proc on /proc type proc (rw,noexec,nosuid,nodev)  
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)  
udev on /dev type tmpfs (rw,mode=0755)  
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)  
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)  
/dev/sda1 on /boot type ext3 (rw)  
192.168.0.100:/home on /mnt/nfs/home type nfs (rw,sync,hard,intr,addr=192.168.0.100)  
192.168.0.100:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,sync,hard,intr,addr=192.168.0.100)  
client:~#

7 Links

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.