3 581
contributi
m (piccole formattazioni) |
m (ha spostato NFS: Networking FileSystem tramite nfs-user-server a Old:NFS: Networking FileSystem tramite nfs-user-server) |
||
(25 versioni intermedie di 9 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Old}} | |||
__TOC__ | |||
==Creare una directory shared tra macchine Linux (NFS: Network File System)== | |||
Per far comunicare due macchine Linux si possono utilizzare diversi metodi: il più veloce consiste nell'utilizzare NFS per mettere in condivisione una particolare directory del filesystem, rendendola così disponibile ad altri client.<br> | |||
Di seguito è descritta una semplice procedura per configurare ed avviare il daemon di NFS sul server e per istruire il client a raggiungere la directory esportata. Questa non vuole essere una guida esaustiva ad NFS, ma solo una breve descrizione di come risolvere velocemente lo scambio di dati tra macchine Linux. | |||
== Impostazione del Server == | |||
Dopo aver installato con apt-get i pacchetti <code>'''nfs-user-server'''</code> (un demone Linux che lavora in userspace) e <code>'''portmap'''</code>, bisogna modificare il file <code>'''/etc/exports'''</code> (se non esiste, occorre crearlo) aggiungendo una riga per ognuna delle directory da esportare.<br> | |||
</ | |||
{{Box | Importante |Per accedere a file con dimensione maggiore di 2 Gb, bisogna installare il pacchetto <code>'''unfs3'''</code> (nfs userspace daemon v3) anziché <code>nfs-user-server</code>}} | |||
< | {{Box | Nota |Per impostazione predefinita Portmap è associato solo all'indirizzo di localhost, mentre nell'uso consueto è diretto verso una o più reti LAN. Per permettere alle varie reti di accedere al server è necessario modificare (oppure eliminare, per permettere un accesso completo) il parametro <code>'''OPTIONS'''</code>, presente nel file <code>'''/etc/default/portmap'''</code> }} | ||
</ | |||
Un esempio di entry per il file export può essere: | |||
<pre>/mnt/Data/download 192.168.2.3 (rw)</pre> | |||
in cui: | |||
* <code>'''/mnt/Data/download'''</code> è la directory da esportare | |||
* <code>'''192.168.2.3'''</code> è il client che può raggiungere la directory in questione; | |||
* <code>'''(rw)'''</code> sono le opzioni impostabili ('''rw''':permessi di scrittura/lettura); | |||
Qualora, invece, volessimo esportare la directory a tutte le macchine presenti all'interno di una sottorete: | |||
<pre>/mnt/Data/download 192.168.0.1/255.255.255.0(rw)</pre> | |||
{{Box | Nota |Nelle nuove versioni di NFS è necessario inserire un flag aggiuntivo (<code>'''sync'''</code> oppure <code>'''async'''</code>) per definire la modalità di accesso ed uso dei file. | |||
<code>'''Sync'''</code> forza la scrittura immediata dei dati man mano che questi arrivano al server, mentre <code>'''async'''</code> consente di scrivere tali dati in intervalli successivi, migliorando così le performance del trasferimento. | |||
Vista la peculiarità di questo tipo di trasferimento è conveniente usare <code>'''sync'''</code> nelle situazioni di rw, ed <code>'''async'''</code> in quelle di <code>ro</code>, in modo da eliminare il pericolo di dati non salvati correttamente (e quindi persi) durante le fasi di scrittura nel caso di crash del server. }} | |||
È possibile inoltre definire gli accessi in modo più fine utilizzando i file <code>/etc/host.access</code> e <code>/etc/host.denied</code>, ma per un uso basilare di NFS non è necessario applicare alcuna modifica. | |||
== Impostazione del Client == | |||
Bisogna innanzitutto installare '''nfs-common''' con apt-get, e successivamente modificare il proprio <code>'''/etc/fstab'''</code>, aggiungendo una voce relativa alla directory che si vuole raggiungere via NFS; ad esempio: | |||
<pre>192.168.2.2:/mnt/Data/download /mnt/nfs nfs rw,users,noauto 0 0</pre> | |||
< | in cui: | ||
* '''<code>192.168.2.2:/mnt/Data/download</code>''': è la URL completa della directory da raggiungere (sintassi, ip:path); | |||
</ | * '''<code>/mnt/nfs</code>''': è la directory dove si vuole montare il device (la directory deve essere stata creata precedentemente); | ||
* '''<code>nfs</code>''': indica il tipo di filesystem da usare (in questo caso NFS, filesystem di rete); | |||
* '''<code>rw,users,noauto</code>''': sono i flag di mount del device (rw: permessi di scrittura/lettura, users: device montabile e smontabile dai vari user, noauto: device da non avviare automaticamente al boot del sistema); | |||
* '''<code>0 0</code>''': sono i flag relativi al check del device da parte dei programmi di controllo della coerenza del filesystem. | |||
A questo punto basta un semplice: | |||
<pre>$ mount /mnt/nfs</pre> | |||
per poter usare normalmente la share NFS, come una normale directory del sistema. | |||
In caso di malfunzionamenti, inoltre, è possibile controllare lo stato della share NFS sia dal client che dal server, utilizzando le applicazioni '''rpcinfo''' e '''nfsstat''' in modo da verificare visualmente le risorse condivise attive nella rete. | |||
{{Autori | |||
| Autore = [[Utente:Ldonesty|Ldonesty]] | |||
}} | |||
{ | |||
{ | |||
| | |||
contributi