Nfs (Italiano)
From ArchWiki
i18n |
---|
English |
Italiano |
Русский |
Česky |
Contents |
Introduzione
Lo scopo di questo articolo è quello di configurare un server nfs per condividere file in rete. Nota: per NFSv4, consultare la guida a NFSv4
Pacchetti richiesti
I pacchetti necessari per l'intsllazione e la configurazione del server e del client sono pochi.
E' necessario installare:
- core/portmap
- core/nfs-utils
Essendo entrambi i pacchetti inclusi nel repository [core], dovrebbero essere già inclusi nella vostra installazione di base di Arch Linux. Se così non fosse, installateli manualmente con:
# pacman -Sy portmap nfs-utils
Configurazione del Server
Ora potete editare i file di configurazione necessari e avviare i demoni, dovrete essere root per eseguire i seguenti comandi illustrati.
File
/etc/exports
Questo file (/etc/exports) definisce le varie condivisioni e i relativi permessi sul server nfs.
Ad esempio:
/files *(ro,sync) ; Accesso in sola lettura per chiunque /files 192.168.0.100(rw,sync) ; Accesso in lettura/scrittura da un client su 192.168.0.100 /files 192.168.1.1/24(rw,sync) ; Accesso in lettura/scrittura dai client compresi tra 192.168.0.100 192.168.1.1 e 192.168.1.255
Se effettuate cambiamenti al file /etc/exports dopo aver avviato il demone, potete renderli effettivi digitando il seguente comando:
exportfs -r
Se si decide di configurare il server nfs come pubblico e accessibile in scrittura, si può utilizzare l'opzione all_squash in combinazione con le opzioni anonuid e anongid. Per esempio, per impostare i privilegi per l'utente nobody nel gruppo nobody, si possono impostare i seguenti parametri:
; Accesso in lettura/scrittura ai client su 192.168.0.100, con accesso rw per l'utente 99 con gid 99 /files 192.168.0.100(rw,sync,all_squash,anonuid=99,anongid=99))
Questo inoltre significa che se si vuole dare diritto di scrittura e lettura a questa direcotry, l'utente nobody.nobody deve essere il possessore della directory consdivisa:
chown -R nobody.nobody /files
Maggiori e più approfonditi dettagli sui file di export sono disponibili sulla man page exports.
/etc/conf.d/nfs
E' possibile editare il file /etc/conf.d/nfs per passare particolari parametri a run-time a nfsd, mountd, statd, e sm-notify. Lo script di init nfs di default per Arch richiede l'opzione --no-notify per statd. Ad esempio:
STATD_OPTS="--no-notify"
Altre opzioni possono essere lasciate impostate come di default o cambiate a seconda delle proprie esigenze. E' opportuno far riferimento alle relative pagine di man per maggiori dettagli.
/etc/hosts.allow
Per permettere l'accesso via rete al server nfs è necessario editare il file /etc/hosts.allow come segue. Il seguente esempio apre i seguenti servizi a chiunque:
nfsd: ALL portmap: ALL mountd:ALL
Per un maggiore controllo sugli accessi leggere la pagina di man hosts_access(5).
Demoni
Potete ora avviare i demoni installati con i seguenti comandi:
/etc/rc.d/portmap start /etc/rc.d/nfslock start /etc/rc.d/nfsd start
E' importante notare che i serivzi vanno avviati nell'ordine specificato.
Per avviare il server nfs all'avvio del sistema, aggiungere i demoni nella lista DAEMONS del file /etc/rc.conf.
Configurazione del Client
File
/etc/conf.d/nfs
Editare il file /etc/conf.d/nfs per passare le appropriate opzioni a run-time a statd - le rimanenti opzioni sono solo per il server. NON usare l'opzione --no-notify lato client, se non si conoscono le esatte conseguenze.
Fare riferimento al man di statd per maggiori dettagli.
Demoni
Avviare i demoni portmap e nfslock:
$ /etc/rc.d/portmap start $ /etc/rc.d/nfslock start
L'ordine di avvio indicato è obbligatorio.
Per aviare automaticamente i demoni all'avvio del sistema aggiungerli nella lista DAEMONS del file /etc/rc.conf.
Dopodichè è sufficiente montare normalmente:
$ mount server:/files /files
Auto-mount all'avvio
Se volete che le direcotry condivise siano montate automaticamente all'avvio del sistema, assicuratevi che nell'array DAEMONS sia presente netfs. Dopodichè aggiungete le opportune righe al file /etc/fstab. Ad esempio:
server:/files /files nfs defaults 0 0
E' possibile inoltre specificare la dimensione dei pacchetti in lettura e scrittura, in tal caso le dimensioni sono da specificare in fstab. I valori riportati di seguito sono quelli default se non ne vengono specificati altri:
server:/files /files nfs rsize=32768,wsize=32768 0 0
Per ulteriori informazioni fare riferimento alla pagina di man di nfs.
Possibili Problemi
Performance scarse, bassa velocità di trasferimento e/o alto carico del sistem usando NFS con collegamenti gigabit
Questo è un risultato delle dimensioni di default dei pacchetti impostata in NFS, che causa una significante frammentazione su reti gigabit. E' possibile modificare questo comportamento cambiando l'rsize e la wsize nei parametri di mount. Utilizzare rsize=32768,wsize=32768 dovrebbe essere sufficiente. E' importante notare che questo problema non si verifica su reti a 100 Mb, a causa di una velocità di trasferimento più bassa.
Nota: La dimensione utilizzata di defualt da NFS4 è 32786. Il massimo è 65536. Aumentare dal valore di default a blocchi di 1024.
Il demone Portmap non si avvia correttamente durante il boot
Assicuratevi di aver inserito il demone portmap nell'array DAEMONS PRIMA di netfs.