(+39) 339-2021161
mail@rodolforizzo.it

24 agosto 2018

Condivisione NFS

Pubblicato da Rodolfo Rizzo il 24 agosto 2018
in: ,

Condivisione dei dati con NFS (Network File System)

In ambiente Linux uno dei sistemi maggiormente utilizzati per la condivisione di dati in una rete di computer è rappresentato dal filesystem distribuito NFS (Network File System). Per prima cosa quindi occorre installare alcuni pacchetti sia sul server che sul client.

Si presume che gli indirizzi IP dei computer siano stati impostati o manualmente o, in presenza del DHCP, impostati direttamente nel router. Nel mio caso ho fatto in modo, tramite il pannello di controllo del router, di usare sempre lo stesso indirizzo IP per i dispositivi, ovvero per il Raspberry, per il portatile e per il pc desktop. 



Installazione di NFS

Verrà mostrato un esempio che ho preso dal wiki di ubuntu in cui la cartella /Immagini (nel mio caso si tratta della cartella Immagini del mio disco USB esterno collegato al Raspberry Pi) che funge da server, viene condivisa con un computer client. In questo modo i contenuti della cartella sul disco esterno collegato al server (il Raspberry) saranno accessibili direttamente dal client.

Nell'esempio i computer avranno i rispettivi indirizzi IP e percorsi:

  • server: 192.168.0.20
  • client: 192.168.0.40
  • percorso cartella immagini del disco USB: /mnt/WDELEMENTS/media/immagini

Server

1 - Per prima cosa occorre Installare il pacchetto nfs-kernel-server.
2 - Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/exports.

 Dovrà essere aggiunta una stringa con questa sintassi: 

Pertanto adattata all'esempio risulterà:

se si desidera che i file siano accessibili in lettura/scrittura:

se si desidera che i file siano accessibili in sola lettura:

È possibile rendere accessibile la condivisione ad altri client aggiungendo ulteriori indirizzi IP con i relativi parametri. Per rendere la cartella disponibile a qualsiasi client occorre sostituire l'indirizzo IP con l'asterisco *

Per un ulteriore livello di sicurezza è possibile configurare opportunamente il file /etc/hosts.allow.

3 - Salvare e chiudere il file /etc/exports.
4 - Per attivare la condivisione digitare i seguenti comandi nel terminale:

su ubuntu 14,04:

su ubuntu 16.04 e successivi:

Il server sarà ora pronto a condividere la cartella /mnt/WDELEMENTS/media/immagini​. Nei successivi riavvi il servizio verrà avviato automaticamente.

Client

1 - Installare il pacchetto nfs-common
2 - Creare una cartella nella quale verrà montata la cartella condivisa sul server per poter accedere ai dati in essa contenuti.

Digitare nel terminale:

Montaggio manuale

Per montare la cartella occorre digitare un comando da terminale con la seguente sintassi:

Pertanto il comando diviene:

Per smontare la cartella è sufficiente sostituire il comando mount con umount. Ad esempio con:

Montaggio automatico all'avvio

1 - Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab
2 - Dovrà essere aggiunta una stringa con la seguente sintassi:

per Ubuntu 14.04

1 - Sarà sufficiente inserire nel file /etc/fstab una stringa di questo tipo:

I parametri utilizzati permettono l'accesso in scrittura e il montaggio/smontaggio tramite i comandi mount/umount.

2 - Salvare e chiudere il file /etc/fstab
3 - Per rendere effettiva la modifica digitare nel terminale i seguenti comandi:

Per Ubuntu 16.04 e successivi

Con l'introduzione di systemd è apparso un malfunzionamento per il quale l'utilizzo della condivisione NFS causa lunghi tempi di attesa sia all'avvio che allo spegnimento del sistema.

Numerose sono le segnalazioni bug e le segnalazioni di possibili arginamenti al problema. Sempre presa dal wiki di ubuntu, di seguito riporto una soluzione che prevede l'utilizzo di alcuni specifici parametri sul file /etc/fstab e la modifica di nfs-config.service.

1 - Una volta aperto il file /etc/fstab con i privilegi di amministrazione e con un editor di testo, aggiungere la seguente stringa:

E quindi salvare e chiudere il file.

2 - Digitare nel terminale:

3 - Inserire nel testo le voci remote-fs.target e NetworkManager.service in modo che risulti:

4 - Salvare premendo i tasti Ctrl+O e chiudere premendo i tasti Ctrl+X


Ti potrebbe interessare

Ultimi post pubblicati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

rodolforizzo.it - webmaster freelance

WEBMASTER FREELANCE

Rodolfo Rizzo

Considero il tuo progetto importante come se fosse il mio. I principali vantaggi nel rivolgersi ad un freelance è che spesso è possibile ottenere lo stesso standard di lavoro a prezzi inferiori. Potrai anche essere in grado di collaborare a stretto contatto e condividere le idee.
RICHIEDI UN PREVENTIVO
mail@rodolforizzo.it
heart linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram