Home > Debian, Linux, Server, Ubuntu > nfs in ubuntu debian installazione semplice e gestione di base

nfs in ubuntu debian installazione semplice e gestione di base

[aggiornato]

inserita la specificazione (no_subtree_check/subtree_check) per evitare l’errore   Neither ‘subtree_check’

 * Exporting directories for NFS kernel daemon...                               exportfs: /etc/exports [5]: Neither 'subtree_check' or 'no_subtree_check' specified for export "192.168.1.102:/media/VM".
  Assuming default behaviour ('no_subtree_check').
  NOTE: this default has changed since nfs-utils version 1.0.x

NFS  (Network File System) è  un protocollo per  file system di tipo distributo che consente ai computers di utilizzare la rete per la condivisione risorse quali dischi remoti come se fossero risorse locali.  Nel post viene descitta una semplice procedura per installare nfs server, esportare un paio di directory in ubuntu debian ed accedere via client alle risorse nfs.

Lato nfs server

Per poter utilizzare nfs server in ubuntu è necessario avere i servizi nfs-kernel-server e portmap avviati.

Installiamo i pacchetti base per avere nfs sever funzionante con

sudo apt-get install nfs-kernel-server rpcbind

per controllare lo stato dei demoni nfs-kernel-server e portmap

$ service nfs-kernel-server status
$ service portmap status

se non attivi avviamo i servizi con

$ service nfs-kernel-server start
$ service portmap start

Configurare nfs server

adesso è necessario editare il file /etc/exports per rendere le directory
da condividere disponibili in rete:
Di seguito un esempio di file exports

/media/VM   192.168.1.102(ro, no_subtree_check)
/mnt/share  192.168.1.1/255.255.255.0(rw, no_subtree_check)

nella prima riga /etc/exports:

  • /media/VM la directory da esportare
  • 192.168.1.102 host che può accedere alla risorsa
  • (ro) permesso in sola lettura

seconda riga /etc/exports/

  • /mnt/share altra directory da esportare
  • 192.168.1.1/255.255.255.0 gli host che possono accedere sono tutti quelli della sottorete 192.168.1
  • (rw) permessi sono sia in lettura che scrittura

Quando il file /etc/export viene modificato è necessario riavviare il servizio

sudo service nfs-kernel-server restart

Il comando showmount  mostra le informazioni di mount per un server NFS

maurizio@lub11-10-i2c:~$ showmount
Hosts on lub11-10-i2c:
192.168.1.202

Il comando nfsstat mostra informazioni di tipo statistico su NFS

Lato nfs client

per poter accedere alle risorse nfs dal lato client è necessario installare il pacchetto nfs-common

sudo apt-get install nfs-common

per avere le risorse disponibili temporanemante si utilizza il comando mount

ad esempio

mkdir /mnt/VM
sudo mount -t nfs 192.168.1.2:/media/VM /mnt/VM
  • -t nfs    per specificare tipo di file system
  • 192.168.1.2:/media/VM risorsa da montare
  • /mnt/VM   punto di mount

per avere le risorse disponibili in modo permanente va modificato il file /etc/fstab utilizzando ad esempio per /media/VM un espressione del tipo

192.168.1.2:/media/VM    /mnt/VM    nfs    noexec,noauto,ro 0 0

Nel caso della modalità permanent conviene comunque utiilzzare l’opzione noauto evitando il mount automatico.  Quando si vorrà disporre  della risorsa sarà sufficiente digitare:

mount /mnt/VM

Protezione a livello di server

Per aumentare la sicurezza  a livello del server NFS  è possibile  definire la protezione servizi RPC lato server, modificando  /etc/hosts.allow. Il formato del file è:

Programma:hosts:permissions

Ad esempio:

portmap:ALL EXCEPT .net:DENY

blocca  tutti gli hosts tranne quelli del dominio .net l’accesso via RPC a NFS.

Controllo dello share NFS

Per controllare lo share nfs oltre a nfsstat si può utilizzare rpcinfo 

esempio di nfstat -v

nfsstat  -v
Server packet stats:
packets    udp        tcp        tcpconn
81169      1          81168      2       

Server rpc stats:
calls      badcalls   badclnt    badauth    xdrcall
81169      0          0          0          0       

Server reply cache:
hits       misses     nocache
0          0          81169   

Server file handle cache:
lookup     anon       ncachedir  ncachedir  stale
0          0          0          0          0       

Server nfs v3:
null         getattr      setattr      lookup       access       readlink     
3         0% 74        0% 0         0% 1         0% 7         0% 0         0% 
read         write        create       mkdir        symlink      mknod        
81048    99% 0         0% 0         0% 0         0% 0         0% 0         0% 
remove       rmdir        rename       link         readdir      readdirplus  
0         0% 0         0% 0         0% 0         0% 0         0% 4         0% 
fsstat       fsinfo       pathconf     commit       
0         0% 2         0% 0         0% 0         0% 

Client packet stats:
packets    udp        tcp        tcpconn
0          0          0          0       

Client rpc stats:
calls      retrans    authrefrsh
0          0          0
  1. dicembre 2, 2013 alle 7:00 pm

    questa procedura vale solo per NFSv3 o anche per NFSv4?

    • dicembre 5, 2013 alle 4:53 pm

      nfs-server-kernel comunque supporta ambedue le versioni
      Ritengo che la v3 non dovrebbe essere molto in circolazione.
      Ci dovrebbe essere quasi esclusivamente la v4. Dove trovi la v3 ?
      Comunque non consiglio l’uso di NFS che va bene per scopi specifici: virtual machine …

    • dicembre 5, 2013 alle 8:51 pm

      infatti mi sembra di capire che NFS sia sempre più in disuso per gestire una rete locale a favore di samba.
      La mia esigenza nasce dal voler sincronizzare la directory documenti del fisso con il portatile.

  2. dicembre 6, 2013 alle 4:12 pm

    Grazie Maurizio, sempre gentile.
    I due pc sono entrambi Debian 7.2 XFCE, guardo subito la tua guida su sshfs.
    Win spero di non usarlo mai più.

  1. No trackbacks yet.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: