NFS

NFS (Network File System) è un protocollo di rete che serve per esportare od importare sezioni del filesystem, permettendo così la condivisione di file e l'uso di pc diskless.

Kernel

Per poter utilizzare NFS nel kernel deve essere compilato il supporto, lo trovate nella sezione Network file systems. Potete verificare la presenza del supporto con:
macondo:~$ cat /proc/filesystems | grep nfs
nodev   nfs
nodev   nfs4
Se il risultato è negativo non allarmatevi, forse non sono caricati i moduli per nfs. Controllate l'esistenza dei moduli:
macondo:~$ find /lib/modules/2.6.8-2-k7/ -iname *nfs*
/lib/modules//kernel/fs/nfs
/lib/modules//kernel/fs/nfs/nfs.ko
/lib/modules//kernel/fs/nfsd
/lib/modules//kernel/fs/nfsd/nfsd.ko
macondo:~# modprobe nfs
macondo:~# lsmod
Module                  Size  Used by
nfs                   192960  0
lockd                  64520  1 nfs
sunrpc                152612  2 nfs,lockd
[...]

Lato server

Sul server devono girare alcuni demoni: portmapper, mountd e nfsd. Il primo molto probabilmente sta già girando sul vostro pc, verificate così:
macondo:~# ps aux | grep portmap
daemon    1408  0.0  0.0  1612  460 ?        Ss   09:43   0:00 /sbin/portmap
gli altri due possono essere installati e lanciati facilmente (in debian) con apt:
macondo:~# apt-get install nfs-user-server
Adesso bisogna configurare il file che gestisce il tutto, /etc/exports. Questo file usa la sintassi:
directory_di_partenza [nodo][(opzioni)]
Descrizione ed esempi Una volta configurato riavviate i servizi mountd e nfsd ed avete terminato
macondo:~# /etc/init.d/nfs-user-server restart
Potete controllare il corretto funzionamento con:
macondo:~# showmount -e
Export list for macondo:
/mnt/dati 192.168.1.0/255.255.255.0

Lato client

Una volta terminata la configurazione del server passate al client. Anche qui il kernel deve supportare NFS. Provate a montare il fs condiviso, ad esempio:
remedios:~# mount -t nfs macondo:/mnt/dati /mnt/nfs
Se è andato tutto bene troverete la partizione montata in /mnt/nfs. Possibili errori sono:
mount: macondo:/mnt/dati failed, reason given by server: Permission denied
Il file /etc/exports è errato o non sono stati riavviati mountd e nfsd dopo la sua modifica.
mount clntudp_create: RPC: Program not registered
I demoni mountd e nfsd non stanno girando oppure è sbagliata l'impostazione dei permessi in /etc/host.deny o /etc/host.allow Per montare le partizione NFS all'avvio è necessario modificare /etc/fstab:
# device      mountpoint     fs-type     options              dump fsckorder
...
macondo:/mnt/dati  /mnt/nfs    nfs        defaults 0    0
...
Sia nel comando mount che in /etc/fstab si possono specificare delle opzioni (separate da virgole senza spazi; in mount precedute da -o). Trovate qui tutte le opzioni. Altre risorse

blog comments powered by Disqus