9.3. File di configurazione del client NFS

Tutte le condivisioni NFS rese disponibili da un server possono essere montate mediante vari metodi, tra cui naturalmente quello manuale, tramite il comando mount. Questo, però obbliga l'utente root a digitare il comando mount a ogni riavvio del sistema. Due metodi di configurazione dei mount NFS sono la modifica di /etc/fstab o l'utilizzo del servizio autofs.

9.3.1. /etc/fstab

Inserendo una linea formattata correttamente nel file /etc/fstab si ottiene lo stesso risultato prodotto dal montaggio manuale del filesystem esportato. Il file /etc/fstab viene letto dallo script /etc/rc.d/init.d/netfs all'avvio del sistema e ogni condivisione NFS elencata, sará montata.

Un esempio di linea /etc/fstab per montare un export di NFS ha il seguente aspetto:

<server>:</path/of/dir> </local/mnt/point> nfs <options> 0 0

La parte <server-host> si riferisce all'hostname, indirizzo IP o al nome di dominio completamente qualificato del server che sta esportando il filesystem.

La </path/of/directory> é la path per la directory esportata.

La parte </local/mount/point> specifica in quale punto del filesystem locale montare la directory esportata. Questo mount point deve esistere già prima che il file /etc/fstab venga letto, altrimenti l'operazione di montaggio non riesce

L'opzione nfs specifica il tipo di filesystem che viene montato.

L'area <options> (area delle opzioni) determina il modo in cui va montato il filesystem. Per esempio, se nell'area delle opzioni è specificato il parametro rw,suid per un particolare montaggio, il filesystem esportato sarà montato in modalità lettura/scrittura e verranno utilizzate le ID utente e di gruppo impostate dal server. Si noti che qui non vanno utilizzate le parentesi. Per conoscere altre opzioni relative al montaggio, consultate la Sezione 9.3.3.

9.3.2. autofs

Uno degli effetti "collaterali" nell'utilizzo del file /etc/fstab è rappresentato dal fatto che, a prescindere da quanto utilizziate quel filesystem montato, il vostro sistema deve comunque dedicare parte delle sue risorse per mantenerlo in funzione. Se sul sistema sono montati solo un paio di filesystem, il problema non è così grave; se però il sistema deve mantenere contemporaneamente in funzione decine di filesystem montati, le prestazioni generali possono risentirne. In alternativa al file /etc/fstab potete usare automount, una utility basata su kernel che monta e smonta automaticamente i filesystem NFS, riducendo il consumo di risorse.

Lo script autofs, contenuto in /etc/rc.d/init.d, viene utilizzato per controllare automount attraverso il file di configurazione contenuto in /etc/auto.master. Mentre automount può essere specificato sulla linea di comando, è più opportuno specificare mount point, hostname, directory esportata e opzioni all'interno di un gruppo di file, invece di digitare il tutto manualmente. Eseguendo autofs come un servizio che si avvia e si arresta su runlevel specificati, si possono implementare automaticamente i parametri di configurazione contenuti nei vari file.

I file di configurazione di autofs sono organizzati secondo rapporti genitore-figlio. Un file di configurazione principale (/etc/auto.master) riferisce ai mount point sul vostro sistema che sono collegati a un particolare tipo di mappa, che assume la forma di altri file di configurazione, programmi, mappe NIS e altri metodi di montaggio meno comuni. Il file auto.master contiene delle linee che si rivolgono a ciascuno di questi mount point, organizzate come segue:

<mount-point>    <map-type>

La parte <mount-point> indica il punto del vostro filesystem locale in cui montare il dispositivo o il filesystem esportato. La parte relativa al tipo di mappa (<map-type>) si riferisce al modo in cui verrà montato il mount point. Il metodo più comune per il montaggio automatico di export di NFS è quello di usare un file come tipo di mappa per un particolare mount point. Il file mappa, di solito chiamato auto.<mount-point>, dove per <mount-point> si intende il mount point designato in auto.master, contiene linee simili a questa:

<directory>  <mount-options>  <host>:<exported-file-system>

La parte <directory> si riferisce alla directory contenuta nel mount point in cui il filesystem esportato dovrebbe essere montato. Proprio come un comando mount standard, l'host che esporta il filesystem e lo stesso filesystem esportato sono richiesti nella sezione <host>: <exported-filesystem>. Per specificare opzioni particolari da utilizzare nel montaggio di un filesystem esportato, inseritele nella sezione <mount-options>, separate da virgole. Per i montaggi di NFS che utilizzano autofs, dovete assolutamente inserire -fstype=nfs nella sezione <mount-options>.

I file di configurazione di autofs, che possono essere utilizzati per svariati montaggi su molti tipi di dispositivi e filesystem, sono particolarmente utili nella creazione di montaggi NFS. Per esempio, alcune aziende salvano la directory /home di un utente su un server centrale tramite una condivisione di NFS. Poi, configurano il file auto.master su ciascuna delle workstation in modo che si rivolgano a un file auto.home contenente le specifiche su come montare la directory /home via NFS. In questo modo, l'utente ha accesso ai dati personali e ai file di configurazione contenuti nella directory /home collegandosi da un punto qualsiasi della rete interna. In un caso come questo, il file auto.master ha il seguente aspetto:

/home   /etc/auto.home

In questo modo, il mount point di /home sul sistema locale è impostato per essere configurato dal file /etc/auto.home, che ha un aspetto simile al seguente:

*  -fstype=nfs,soft,intr,rsize=8192,wsize=8192,nosuid  server.example.com:/home

Secondo questa linea, qualsiasi directory cui un utente cerchi di accedere sotto la directory /home locale (per via dell'asterisco) dovrebbe risultare in un montaggio NFS sul sistema server.example.com all'interno del suo filesystem /home esportato. Le opzioni di montaggio specificano che ogni montaggio NFS nella directory /home deve servirsi di una particolare serie di impostazioni. Per maggiori informazioni sulle opzioni di montaggio, tra cui quelle incluse in questo esempio, consultate la Sezione 9.3.3.

9.3.3. Comuni opzioni di montaggio NFS

Oltre al montaggio di un filesystem via NFS su un host remoto, si possono specificare numerose altre opzioni al momento del montaggio, che possono facilitare tale operazione. Queste opzioni possono essere utilizzate con comandi manuali mount, impostazioni di /etc/fstab, autofs e altri metodi di montaggio.

Le opzioni che seguono sono le più diffuse per i montaggi via NFS:

Nella pagina man di mount sono elencate molte altre opzioni, tra cui quelle relative al montaggio di filesystem non NFS.