Menu

Per questa pagina è stata utilizzata la traduzione automatica. Alcuni contenuti potrebbero non essere perfetti.

Condividi feedback

Linux NFS Server: come configurare server e client

Sommario

Condivi questa pagina

blank avatar
Jeff Whitaker

Che cos'è il server NFS Linux?

Network File Sharing (NFS) è un protocollo che consente di condividere directory e file con altri client Linux tramite una rete. Le directory condivise vengono solitamente create su un file server, che esegue il componente server NFS. Gli utenti vi aggiungono file, che vengono poi condivisi con altri utenti che hanno accesso alla cartella.

Una condivisione file NFS viene montata su una macchina client, rendendola disponibile proprio come le cartelle create localmente dall'utente. NFS è particolarmente utile quando lo spazio su disco è limitato e si ha la necessità di scambiare dati pubblici tra computer client.

Questo fa parte della nostra serie di articoli su Linux su Azure.

In questo articolo imparerai:

Tutorial rapido #1: Configurazione di un server NFS con una condivisione NFS

Vediamo come configurare un server NFS e creare una condivisione file NFS, che le macchine client possono montare e a cui possono accedere.

Contenuto correlato: Crea il tuo servizio NFS enterprise

Installazione del server NFS

Ecco come installare il kernel NFS: questo è il componente server che consente a una macchina di esporre directory come condivisioni NFS.

Su Ubuntu e Debian:

sudo apt-get update sudo apt install nfs-kernel-server

Su CentOS e Fedora:

yum -y install nfs-utils apt-get install nfs-kernel-server

Creazione della directory NFS radice

Ora creeremo la directory radice delle condivisioni NFS, nota anche come cartella di esportazione.

sudo mkdir /mnt/myshareddir

Imposta i permessi in modo che qualsiasi utente sulla macchina client possa accedere alla cartella (nel mondo reale dovresti valutare se la cartella necessita di impostazioni più restrittive).

sudo chown nobody:nogroup /mnt/myshareddir #nessuno è proprietario sudo chmod 777 /mnt/myshareddir #tutti possono modificare i file

Definizione dell'accesso per i client NFS nel file di esportazione

Per concedere l'accesso ai client NFS, dovremo definire un file di esportazione. Il file si trova solitamente in /etc/exports

Modifica il file /etc/exports in un editor di testo e aggiungi una delle seguenti tre direttive.

Tutte le direttive seguenti utilizzano le opzioni rw, che abilita sia la lettura che la scrittura, sync, che scrive le modifiche su disco prima di consentire agli utenti di accedere al file modificato, e no_subtree_check, che significa che NFS non controlla se ogni sottodirectory è accessibile all'utente.

Per abilitare l'accesso a un singolo client /mnt/myshareddir {clientIP}(rw,sync,no_subtree_check)
Per abilitare l'accesso a più client /mnt/myshareddir {clientIP-1}(rw,sync,no_subtree_check) {clientIP-2}(...) {clientIP-3}(...)
Per abilitare l'accesso a un'intera sottorete /mnt/myshareddir {subnetIP}/{subnetMask}(rw,sync,no_subtree_check)

Rendere la condivisione NFS disponibile ai client

Ora puoi rendere la directory condivisa disponibile ai client utilizzando il comando exportfs. Dopo aver eseguito questo comando, il kernel NFS deve essere riavviato.

sudo exportfs -a #rende disponibile la condivisione file sudo systemctl restart nfs-kernel-server #riavvio del kernel NFS

Se hai un firewall abilitato, dovrai anche aprire l'accesso al firewall usando il comando sudo ufw allow.

Tutorial rapido #2: Configurazione di NFS sulla macchina client e montaggio di una condivisione NFS

Ora che abbiamo configurato il server NFS, vediamo come condividere una cartella, definita come condivisione NFS, con un computer Linux montandola sulla macchina locale.

Installazione dei pacchetti client NFS

Ecco i pacchetti che devi installare per abilitare il montaggio di una condivisione NFS su una macchina Linux locale.

Su Ubuntu e Debian:

sudo apt update sudo apt install nfs-common

Su CentOS e Fedora:

sudo yum install nfs-utils

Montaggio temporaneo della condivisione file NFS

Puoi montare la cartella NFS in una posizione specifica sulla macchina locale, nota come punto di montaggio, usando i seguenti comandi.

  1. Crea una directory locale: questo sarà il punto di montaggio per la condivisione NFS. Nel nostro esempio chiameremo la cartella /var/locally-mounted.
sudo mkdir /var/locally-mounted
  1. Monta la condivisione file eseguendo il comando mount, come segue. Non viene visualizzato alcun output se il comando ha esito positivo.
sudo mount -t nfs {IP of NFS server}:{folder path on server} /var/locally-mounted

Ad esempio:

sudo mount -t nfs 192.168.20.100:/myshareddir /var/locally-mounted

Il punto di montaggio ora diventa la radice della condivisione file montata e al suo interno dovresti trovare tutte le sottodirectory memorizzate nella condivisione file NFS sul server.

  1. Per verificare che la condivisione NFS sia montata correttamente, esegui il comando mount oppure df -h.

Montaggio permanente delle condivisioni file NFS

Le directory NFS remote possono essere montate automaticamente all'avvio del sistema locale. Puoi definire questa impostazione nel file /etc/fstab. Per assicurarti che una condivisione file NFS venga montata localmente all'avvio, devi aggiungere una riga a questo file con i dettagli della condivisione file.

Per montare automaticamente le condivisioni NFS su Linux, procedi come segue:

  1. Crea una directory locale che verrà utilizzata per montare la condivisione file.
sudo mkdir /var/locally-mounted
  1. Modifica il file /etc/fstab usando il comando nano o qualsiasi editor di testo.
  2. Aggiungi una riga che definisce la condivisione NFS. Inserisci un carattere di tabulazione tra ciascun parametro. Dovrebbe apparire come una sola riga senza interruzioni di riga.

Gli ultimi tre parametri indicano le opzioni NFS (che impostiamo su default), il dump del file system e il controllo del file system (di solito non vengono usati quindi li impostiamo a 0).

{IP of NFS server}:{folder path on server} /var/locally-mounted nfs defaults 0 0
  1. Ora monta la condivisione file usando il seguente comando. Alla successiva accensione del sistema, la cartella verrà montata automaticamente.
mount /var/locally-mounted mount {IP of NFS server}:{folder path on server}

Azure NetApp Files: una soluzione cloud per sostituire il server NFS

Microsoft Azure, un popolare servizio cloud pubblico, consente di configurare condivisioni file NFS nel cloud e accedervi da macchine nel proprio data center locale o distribuite nel cloud Azure.

Azure NetApp Files è un servizio cloud che offre file storage enterprise dalle performance elevate per le aziende. Supporta le versioni NFS 3.1 e successive.

Azure NetApp Files supporta tutti i tipi di workload di produzione e offre alta disponibilità integrata. Puoi scegliere il livello e le performance del servizio ed eseguire snapshot istantanei dei tuoi dati.

Prestazioni file estreme

Sfrutta la tecnologia NetApp leader di settore per migrare i workload file Linux e Windows più esigenti su Azure. Azure NetApp Files offre una latenza inferiore al millisecondo e prestazioni equivalenti a quelle che otterresti con un server bare metal locale.

Azure NetApp Files offre tre livelli di performance: Standard, Premium e Ultra. Puoi effettuare il provisioning delle condivisioni file in qualsiasi livello con un solo clic.

Gestione dati integrata

Azure NetApp Files si integra con workload aziendali complessi come SAP HANA, high performance computing (HPC), applicazioni line of business (LOB) e virtual desktop infrastructure (VDI). Per questi e molti altri workload enterprise, offre gestione dati integrata e consapevolezza applicativa per backup e snapshot.

Gestione centralizzata

Puoi gestire le condivisioni file tramite Azure Portal o CLI, comandi PowerShell o una REST API, proprio come qualsiasi altro servizio Azure. Azure NetApp Files supporta più protocolli di storage in un unico servizio, inclusi NFSv3, SMB3.1.x e NFSv4.1. Questo ti consente di spostare i workload nel cloud con un modello “lift and shift”, senza richiedere modifiche al codice.

Migra in tutta sicurezza

Quando si migrano grandi workload enterprise, il trasferimento dati rsync non è sufficiente. Con Azure NetApp Files puoi gestire facilmente il trasferimento e la sincronizzazione dei dati su larga scala.

Il servizio offre crittografia dei dati conforme a FIPS 140-2, controllo degli accessi in base al ruolo (RBAC), autenticazione Active Directory ed elenchi di controllo degli accessi (ACL). Azure NetApp Files è conforme alle principali certificazioni di settore come HIPAA, SOC e GDPR. Queste e altre funzionalità enterprise-grade ti consentono di migrare qualsiasi workload enterprise nel cloud con la massima sicurezza.

Vuoi iniziare? Prova Azure NetApp Files con una demo gratuita

Drift chat loading