Guida non verificata da molto tempo. Può contenere informazioni utili per la versione Ubuntu Pro 16.04 - Clicca qui!

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

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).
Verrà mostrato un esempio in cui la cartella /home di un computer che funge da server, viene condivisa con un computer client. In questo modo i contenuti della cartella sul server saranno accessibili direttamente dal client.

Si presume che gli indirizzi IP dei computer siano stati impostati o manualmente o, in presenza del DHCP, impostati direttamente nel router. Nell'esempio i computer avranno i rispettivi indirizzi IP:

Server

  1. 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:

    /percorso/cartella/condivisa  indirizzo.ip.client(opzioni,di,condivisione)
    Pertanto adattata all'esempio risulterà:
    • se si desidera che i file siano accessibili in lettura/scrittura:

      /home 192.168.0.40(rw,no_root_squash)
    • se si desidera che i file siano accessibili in sola lettura:

      /home 192.168.0.40(ro,no_root_squash)

      È 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 16.04 e successivi:

      sudo systemctl restart nfs-kernel-server

    Il server sarà ora pronto a condividere la cartella /home. 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:

    sudo mkdir -p /mnt/nfs/home

Montaggio manuale

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:

    indirizzo.ip.server:/percorso/cartella/condivisa  /percorso/cartella/di/montaggio nfs opzioni,di,montaggio 0 0

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. Di seguito ne viene riportata una 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:

    192.168.1.10:/home /mnt/nfs/home nfs4 _netdev,bg,nofail,rw,relatime,rsize=65536,wsize=65536 0 0
    E quindi salvare e chiudere il file.
  2. Digitare nel terminale:

    sudo systemctl edit --full nfs-config.service
  3. Inserire nel testo le voci remote-fs.target e NetworkManager.service in modo che risulti:

    [Unit]
    Description=Preprocess NFS configuration
    After=local-fs.target remote-fs.target NetworkManager.service
    DefaultDependencies=no
    
    [Service]
    Type=oneshot
    RemainAfterExit=yes
    ExecStart=/usr/lib/systemd/scripts/nfs-utils_env.sh
  4. Salvare premendo i tasti Ctrl+O e chiudere premendo i tasti Ctrl+X

Ulteriori risorse


CategoryServer CategoryDaRevisionare

Server/Nfs (l'ultima modifica è del 29/01/2022 18.44.39, fatta da ivantu)