NFS (Network File System): configurazione server e client
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.
