Nfs-kernel-server: condividere risorse tra macchine GNU/Linux

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

Debian 5 "lenny"
Debian 6 "squeeze"
ERRORE: utilizzare "unstable_2024" come parametro al posto di " Sid "! Vedi qui.

Creare directory da condivedere in una rete GNU/Linux, in modo semplice.

Uno dei modi più semplici per condividere risorse tra macchine GNU/Linux è l'uso di Network File System. Il funzionamento è semplice, una macchina, server, mette a disposizione la risorsa (ovvero una directory del propio file system), altre macchine, client, vi accedono come fosse una directory del proprio file system. Ora si vedranno entrambe le impostazioni, lato server e lato client.


Impostazione lato Server

Info.png Convenzione
IP della macchina server 192.168.1.10, directory da condividere /media/storage


Installare i pacchetti necessari:

# apt-get install nfs-kernel-server portmap

Ora editare col vostro editor (gedit, kate, vim.......) preferito il file /etc/exports ed aggiungere la seguente:

/media/storage      192.168.1.0/24(rw,sync,no_subtree_check)

nota

  • 192.168.1.0/24 indica l'abilitazione a tutte le macchine della rete 192.168.1
    • se si vuole abilitare una o determinate macchine basta specificarne l'IP
  • rw indica che tutti hanno i permessi di lettura e scrittura
    • se si vogliono dare solo i permessi di lettura, sostituire rw con ro
  • /media/storage è la directory del nostro filesystem che vogliamo condividere

Completare dando ai vari client i permessi per l'accesso alla macchina server: editare il file /etc/hosts.allow ed inserire

portmap: 192.168.1

Come si capisce, in questo modo si da il permesso di accedere a tutta la LAN, se si vogliono delle restrizioni agire di conseguenza inserendo l'indirizzo specifico del/i client. Ora lanciamo il demone e rendiamo disponibile la directory condivisa

# /etc/init.d/nfs-kernel-server start 
# exportfs -a

Impostazione lato Client

Installare i pacchetti necessari

# apt-get install nfs-common portmap

creare la dirctory dove si vuol montare la directory condivisa, esempio: /media/condivisa

# mkdir /media/condivisa

editare il file /etc/fstab ed inserire

192.168.1.10:/media/storage /media/condivisa nfs rw,auto,hard  0   0

nota

  • 192.168.1.10:/media/storage sono l'indirizzo e la directory del server
    • aggiungere tante entry quante sono le directory condivise
  • /media/condivisa è la directory dove sarà montata la risorsa
  • nfs è il tipo di file system
  • rw sono i permessi di lettura e scrittura
    • modificare in ro se si desideramo solo permessi di lettura
  • auto la risorsa viene montata automaticamente
    • modificare in noauto se si vuole montare la partizione manualmente

Editare il file /etc/hosts.allow ed aggiungere

portmap: 192.168.1.10

Ora avviare il demone e montare la partizione

# /etc/init.d/nfs-common start
# mount -a

Conclusioni

Come scritto all'inizio questo è il modo più semplice per condividere risorse tra macchine Gnu/Linux, queste impostazioni sono adatte ad una rete privata, dove non ci sono problemi di sicurezza, visto che ho lasciato abilitato la condivisione a tutta la LAN. Se si vuole fare una condivisione più mirata o selettiva

 man nfs, man portmap

xtow