Ricerca nel sito web

Come installare e configurare un server NFS su Ubuntu 22.04


NFS (Network File Share) è un protocollo che ti consente di condividere directory e file con altri client Linux in una rete. La directory da condividere viene solitamente creata sul server NFS e vi vengono aggiunti i file.

I sistemi client montano la directory che risiede sul server NFS, che garantisce loro l'accesso ai file creati. NFS è utile quando è necessario condividere dati comuni tra i sistemi client, soprattutto quando stanno esaurendo lo spazio.

Questa guida comprenderà 2 sezioni principali: installazione e configurazione del server NFS su Ubuntu 22.04, 20.04 e 18.04 e installazione del client NFS sul sistema Linux cliente.

Installazione e configurazione del server NFS su Ubuntu

Per installare e configurare il server NFS, seguire i passaggi descritti di seguito.

Passaggio 1: installa il server del kernel NFS su Ubuntu

Il primo passo è installare il pacchetto nfs-kernel-server sul server. Ma prima di farlo, aggiorniamo prima i pacchetti di sistema utilizzando il seguente comando apt.

sudo apt update

Una volta completato l'aggiornamento, procedi e installa il pacchetto nfs-kernel-server come mostrato di seguito. Questo memorizzerà pacchetti aggiuntivi come nfs-common e rpcbind che sono ugualmente cruciali per la configurazione della condivisione file.

sudo apt install nfs-kernel-server

Passaggio 2: crea una directory di esportazione NFS

Il secondo passaggio sarà la creazione di una directory che verrà condivisa tra i sistemi client. Questa viene anche definita directory di esportazione ed è in questa directory che successivamente creeremo i file che saranno accessibili dai sistemi client.

Esegui il comando seguente specificando il nome della directory di montaggio NFS.

sudo mkdir -p /mnt/nfs_share

Poiché desideriamo che tutte le macchine client accedano alla directory condivisa, rimuovi qualsiasi restrizione nei permessi della directory.

sudo chown -R nobody:nogroup /mnt/nfs_share/

Puoi anche modificare i permessi dei file in base alle tue preferenze. Ecco che abbiamo concesso i privilegi di lettura, scrittura ed esecuzione a tutti i contenuti all'interno della directory.

sudo chmod 777 /mnt/nfs_share/

Passaggio 3: concedere l'accesso alla condivisione NFS ai sistemi client

Le autorizzazioni per l'accesso al server NFS sono definite nel file /etc/exports. Quindi apri il file utilizzando il tuo editor di testo preferito:

sudo vim /etc/exports

È possibile fornire l'accesso a un singolo client, a più client o specificare un'intera sottorete.

In questa guida abbiamo consentito a un'intera sottorete di accedere alla condivisione NFS.

/mnt/nfs_share  192.168.43.0/24(rw,sync,no_subtree_check)

Spiegazione delle opzioni utilizzate nel comando precedente.

  • rw: sta per lettura/scrittura.
  • sincronizzazione: richiede che le modifiche vengano scritte sul disco prima di essere applicate.
  • No_subtree_check: elimina il controllo del sottoalbero.

Per concedere l'accesso a un singolo client, utilizzare la sintassi:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)

Per più client, specificare ciascun client su un file separato:

/mnt/nfs_share  client_IP_1 (re,sync,no_subtree_check)
/mnt/nfs_share  client_IP_2 (re,sync,no_subtree_check)

Passaggio 4: esporta la directory di condivisione NFS

Dopo aver concesso l'accesso ai sistemi client preferiti, esportare la directory di condivisione NFS e riavviare il server del kernel NFS affinché le modifiche diventino effettive.

sudo exportfs -a
sudo systemctl restart nfs-kernel-server

Passaggio 5: consentire l'accesso NFS tramite il firewall

Affinché il client possa accedere alla condivisione NFS, è necessario consentire l'accesso attraverso il firewall, altrimenti l'accesso e il montaggio della directory condivisa saranno impossibili. Per ottenere ciò esegui il comando:

sudo ufw allow from 192.168.43.0/24 to any port nfs

Ricarica o abilita il firewall (se era spento) e controlla lo stato del firewall. La porta 2049, che è la condivisione file predefinita, dovrebbe essere aperta.

sudo ufw enable
sudo ufw status

Installare il client NFS sui sistemi client

Abbiamo finito di installare e configurare il servizio NFS sul server, ora installiamo NFS sul sistema client.

Passaggio 1: installare il pacchetto NFS-Common

Come è normale, inizia aggiornando i pacchetti di sistema e i repository prima di ogni altra cosa.

sudo apt update

Successivamente, installa i pacchetti nfs-common come mostrato.

sudo apt install nfs-common

Passaggio 2: creare un punto di montaggio NFS sul client

Successivamente, devi creare un punto di montaggio su cui monterai la condivisione nfs dal server NFS. Per fare ciò, esegui il comando:

sudo mkdir -p /mnt/nfs_clientshare

Passaggio 3: montare la condivisione NFS sul sistema client

L'ultimo passaggio rimanente è montare la condivisione NFS condivisa dal server NFS. Ciò consentirà al sistema client di accedere alla directory condivisa.

Controlliamo l'indirizzo IP del server NFS utilizzando il comando ifconfig.

ifconfig

Per ottenere ciò esegui il comando:

sudo mount 192.168.43.234:/mnt/nfs_share  /mnt/nfs_clientshare

Passaggio 4: test della condivisione NFS sul sistema client

Per verificare che la nostra configurazione NFS funzioni, creeremo alcuni file nella directory di condivisione NFS situata nel server.

cd /mnt/nfs_share/
touch file1.txt file2.txt file3.txt

Ora torna al sistema client NFS e controlla se i file esistono.

ls -l /mnt/nfs_clientshare/

Grande! L'output conferma che possiamo accedere ai file che abbiamo appena creato sul server NFS!

E questo è tutto. In questa guida ti abbiamo guidato attraverso l'installazione e la configurazione del server NFS su Ubuntu 22.04, Ubuntu 20.04 e Ubuntu 18.04 . NFS viene utilizzato raramente al giorno d'oggi ed è stato relegato a favore del più robusto e sicuro protocollo di condivisione Samba.