Per condividere file e directory tra computer unix/linux connessi in rete è necessario configurare NFS (Network File System). Il supporto ad NFS è già disponibile all'interno del Kernel di Linux pertanto non è necessario installare pacchetti aggiuntivi ma a limite si tratta di abilitare tali funzionalità ricompilando il kernel. NFS si basa su una architettura client/server, in particolare la macchina su cui risiede la directory che si vuole condividere fungerà da "server" mentre tutte le altre che vorranno accedere, via rete, a tale directory fungeranno da "client".
L'applicazione server (daemon) di NFS è chiamata rpc.nfsd mentre la versione client: rpc.mountd Esiste inoltre una terza applicazione (rps.rquotad) per la gestione delle quote sul disco contenete la directory condivisa. Tutti gli NFS deamons normalmente vengono attivati in fase di avvio attraverso lo script /etc/rc.d/init.d/nfs ed operano solo se il relativo file di configurazione (/etc/exports) esiste ed è non vuoto.
NFS Server Support
Il file di configurazione /etc/exports viene gestito dal programma "exportfs" Ecco un esempio di utilizzo di exportfs:
$ exportfs client DomainName:/path/name/on/the/server
$ exportfs -o rw :/path/name/on/the/server
Il primo comando, da eseguire sul server, esporta la diretory /path/name/on/the/server verso il client denominato "client" appartenente al dominio "DomainName" (eventualmente è possibile inserire l'indirizzo IP del client se non esiste un resolver DNS o non si è configurato il file /etc/hosts) La directory viene esportata in sola lettura se nessun altro parametro viene specificato.
Il secondo comando esporta la suddetta directory a tutti in modalità di lettura/scrittura. L'insieme completo delle opzioni disponibili è visibile, come al solito, tramite
$ man exportfs
Per rimuovere una condivisione esistente bisogna utilizzare l'opzione [-u], ad esempio:
$ exportfs -u client DomainName:/a/path/name/on/the/server
Tutti questi comandi modificano il file di configurazione /etc/exports in modo da ripristinare la situazione ad ogni riavvio del server.
NFS Client Support
Il lato client di NFS viene fatto tramite l'utilizzo del comando mount. Ad esempio::
$ mount -t nfs -o rsize=1024,wsize=1024 client:/mnt/an/nfs/vol /mnt/nfs
Il comando dichiara in maniera esplicita che si tratta di una condivisione di rete (NFS) tramite [-t nfs]. Le opzioni rsize e wsize le dimensioni dei buffers da utilizzare (multipli di 1024). Possono essere omesse ma valori adeguati influiscono molto sulle performance. Altre opzioni possono specificare le modalità di accesso alla directory condivisa: lettura, scrittura, esecuzione.
Per "smontare" una directory condivisa basta:
$ umount /mnt/nfs
Per montare una directory condivisa ad ogni riavvio si inserirà il relativo comando nel file /etc/fstab.
Lo stato delle connesioni di rete NFS è monitorabile tramite il comando: nfsstat.