NFS: esempi: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
(Non avviene l'autompunt in "home" (metodo diretto))
Nessun oggetto della modifica
Riga 29: Riga 29:
*Creare la directory da condividere:<pre># mkdir /home/nfs</pre>Si noti che la directory appena creata dall'utente "root" ha permessi "755" per cui un normale utente non ha su di essa il permesso di scrittura. Questa situazione può essere risolta in due modi:<br/>- Si modificano i permessi della directory in "777" (o "757")<br/>- Si crea un nuovo gruppo e si fa in modo che la directory abbia permessi "775" e proprietari root/nuovogruppo<br/>In questo esempio verrà percorsa questa seconda strada.<br/>
*Creare la directory da condividere:<pre># mkdir /home/nfs</pre>Si noti che la directory appena creata dall'utente "root" ha permessi "755" per cui un normale utente non ha su di essa il permesso di scrittura. Questa situazione può essere risolta in due modi:<br/>- Si modificano i permessi della directory in "777" (o "757")<br/>- Si crea un nuovo gruppo e si fa in modo che la directory abbia permessi "775" e proprietari root/nuovogruppo<br/>In questo esempio verrà percorsa questa seconda strada.<br/>
*Creare un nuovo gruppo, ad esempio "nfs-users":<pre># addgroup nfs-users</pre>Modificare i permessi della directory da condividere:<pre># chmod 775 /home/nfs</pre>e infine modificarne i proprietari:<pre># chown root:nfs-users /home/nfs</pre>
*Creare un nuovo gruppo, ad esempio "nfs-users":<pre># addgroup nfs-users</pre>Modificare i permessi della directory da condividere:<pre># chmod 775 /home/nfs</pre>e infine modificarne i proprietari:<pre># chown root:nfs-users /home/nfs</pre>
* Aggiungere tutti gli utenti che si desiderano al nuovo gruppo appena creato. Per l'utente "nomeutente1":<pre># adduser nomeutente1 ftp-users</pre>Da questo momento in poi (previo un suo logout se l'utente è collegato al server) "nomeutente1" avrà i permessi per scrivere all'interno della directory "/home/nfs".
* Aggiungere tutti gli utenti che si desiderano al nuovo gruppo appena creato. Per l'utente "nomeutente1":<pre># adduser nomeutente1 nfs-users</pre>Da questo momento in poi (previo un suo logout se l'utente è collegato al server) "nomeutente1" avrà i permessi per scrivere all'interno della directory "/home/nfs".
*Modificare il file "/etc/exports" aggiungendovi la seguente riga per rendere condivisibile la directory <code>/home/nfs</code>:<pre>/home/nfs 192.168.1.0/24(rw,fsid=0,no_subtree_check,crossmnt,sync)</pre>Da questo momento la directory <code>/home/nfs</code> sarà la "radice" delle risorse esportate.
*Modificare il file "/etc/exports" aggiungendovi la seguente riga per rendere condivisibile la directory <code>/home/nfs</code>:<pre>/home/nfs 192.168.1.0/24(rw,fsid=0,no_subtree_check,crossmnt,sync)</pre>Da questo momento la directory <code>/home/nfs</code> sarà la "radice" delle risorse esportate.
*Modificare i file <code>/etc/default/nfs-common</code> e <code>/etc/default/nfs-kernel-server</code> come già spiegato [[Nfs-kernel-server: configurazione lato server#Configurazione|qui]].
*Modificare i file <code>/etc/default/nfs-common</code> e <code>/etc/default/nfs-kernel-server</code> come già spiegato [[Nfs-kernel-server: configurazione lato server#Configurazione|qui]].
Riga 45: Riga 45:
* Modificare il file "/etc/auto.master" aggiungendovi la seguente riga in base al tipo di mount scelto.<br/><u>Metodo diretto</u><br/><pre>/- /etc/auto.nfs</pre>Ciò vuol dire che il [[mountpoint]] sul client sarà <code>/home/nfs</code> cioè ciò che è stato specificato nel file <code>auto.nfs</code> .<br/><u>Metodo indiretto</u><br/><pre>/home/condivisa /etc/auto.nfs</pre>Ciò vuol dire che il mountpoint sul client sarà <code>/home/condivisa</code> e al suo interno sarà montata la directory remota con il nome scelto nel file <code>auto.nfs</code> .
* Modificare il file "/etc/auto.master" aggiungendovi la seguente riga in base al tipo di mount scelto.<br/><u>Metodo diretto</u><br/><pre>/- /etc/auto.nfs</pre>Ciò vuol dire che il [[mountpoint]] sul client sarà <code>/home/nfs</code> cioè ciò che è stato specificato nel file <code>auto.nfs</code> .<br/><u>Metodo indiretto</u><br/><pre>/home/condivisa /etc/auto.nfs</pre>Ciò vuol dire che il mountpoint sul client sarà <code>/home/condivisa</code> e al suo interno sarà montata la directory remota con il nome scelto nel file <code>auto.nfs</code> .
*Riavviare "autofs":<pre># service autofs restart</pre>
*Riavviare "autofs":<pre># service autofs restart</pre>
*Rendere operativo l'automount.<br/><u>Metodo diretto</u><br/><pre>$ touch /home/nfs</pre><u>Metodo indiretto</u><br/><pre>$ touch /home/condivisa/nfs</pre>Per automatizzare l'eecuzione di questo comando è possibile creare uno [[script]] che verrà eseguito ogni volta che viene stabilita una connessione. È sufficiente creare il file <code>/etc/network/if-up.d/my-touch-nfs</code> contenente un comando coerente con il tipo di mount scelto.<br/><u>Metodo diretto</u><br/><pre>#!/bin/sh&#10;&#10;&#10;# File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs&#10;touch /home/nfs >/dev/null 2>&1</pre><u>Metodo indiretto</u><br/><pre>#!/bin/sh&#10;&#10;&#10;# File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs&#10;touch /home/condivisa/nfs >/dev/null 2>&1</pre>
*Rendere operativo l'automount.<br/><u>Metodo diretto</u><br/><pre>$ touch /home/nfs</pre><u>Metodo indiretto</u><br/><pre>$ touch /home/condivisa/nfs</pre>Per automatizzare l'eecuzione di questo comando è possibile creare uno [[script]] che verrà eseguito ogni volta che viene stabilita una connessione. È sufficiente creare il file <code>/etc/network/if-up.d/my-touch-nfs</code> contenente un comando coerente con il tipo di mount scelto.<br/><u>Metodo diretto</u><br/><pre>#!/bin/sh&#10;&#10;&#10;# File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs&#10;touch /nfs >/dev/null 2>&1</pre><u>Metodo indiretto</u><br/><pre>#!/bin/sh&#10;&#10;&#10;# File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs&#10;touch /home/condivisa/nfs >/dev/null 2>&1</pre>
* Rendere eseguibile il file appena creato:<pre># chmod +x /etc/network/if-up.d/my-touch-nfs</pre>
* Rendere eseguibile il file appena creato:<pre># chmod +x /etc/network/if-up.d/my-touch-nfs</pre>

Versione delle 22:38, 4 mag 2015

NFS

Sommario

Spazio Kernel
  1. Lato server
  2. Lato client

In questa pagina si mostreranno alcuni esempi pratici sull'utilizzo di NFS.

LAN e autofs

L'esempio che segue presuppone una configurazione della propria LAN di questo tipo:

  • NFSv4
  • Client e server Debian
  • IP Server = 192.168.1.1
  • IP Client1 = 192.168.1.10
  • IP Client2 = 192.168.1.11
  • Mount con autofs (metodo (dinamico)
  • Risoluzione dei nomi attraverso il file /etc/hosts
  • La directory da esportare tramite NFS sarà, sul server, /home/nfs/

/etc/hosts

Le macchine della LAN avranno un nome di dominio fittizio, in questo caso sarà "mialan". Modificare di conseguenza il file /etc/hosts :

Server
192.168.1.1 nomeserver.mialan nomeserver
Client1
192.168.1.10 nomeclient1.mialan nomeclient1
Client2
192.168.1.11 nomeclient2.mialan nomeclient2

I nomi delle macchine (nomeserver, nomeclient1 e nomeclient2) sono tipicamente già presenti all'interno del file, altrimenti ricavarle con il comando:

$ hostname

Configurazione server

Tutti i passi seguenti richiedono i permessi di amministratore del server.

  • Installare il pacchetto "nfs-kernel-server":
    # apt-get install nfs-kernel-server
  • Creare la directory da condividere:
    # mkdir /home/nfs
    Si noti che la directory appena creata dall'utente "root" ha permessi "755" per cui un normale utente non ha su di essa il permesso di scrittura. Questa situazione può essere risolta in due modi:
    - Si modificano i permessi della directory in "777" (o "757")
    - Si crea un nuovo gruppo e si fa in modo che la directory abbia permessi "775" e proprietari root/nuovogruppo
    In questo esempio verrà percorsa questa seconda strada.
  • Creare un nuovo gruppo, ad esempio "nfs-users":
    # addgroup nfs-users
    Modificare i permessi della directory da condividere:
    # chmod 775 /home/nfs
    e infine modificarne i proprietari:
    # chown root:nfs-users /home/nfs
  • Aggiungere tutti gli utenti che si desiderano al nuovo gruppo appena creato. Per l'utente "nomeutente1":
    # adduser nomeutente1 nfs-users
    Da questo momento in poi (previo un suo logout se l'utente è collegato al server) "nomeutente1" avrà i permessi per scrivere all'interno della directory "/home/nfs".
  • Modificare il file "/etc/exports" aggiungendovi la seguente riga per rendere condivisibile la directory /home/nfs:
    /home/nfs 192.168.1.0/24(rw,fsid=0,no_subtree_check,crossmnt,sync)
    Da questo momento la directory /home/nfs sarà la "radice" delle risorse esportate.
  • Modificare i file /etc/default/nfs-common e /etc/default/nfs-kernel-server come già spiegato qui.
  • Modificare il file /etc/idmapd.conf specificando il dominio fittizio scelto e aggiungendo questa riga (o decommentando/modificando la riga con la direttiva "Domain"):
    Domain = mialan
  • Riavviare i servizi:
    # service nfs-common restart
    # service nfs-kernel-server restart

Configurazione client

La configurazione che segue è per un solo client. Per altri gli client la procedura è analoga.

  • Installare i pacchetti "nfs-common" e "autofs5":
    # apt-get install nfs-common autofs5
  • Modificare i file /etc/default/nfs-common e /etc/idmapd.conf come spiegato qui. Il file idmapd.conf dovrà avere la stessa riga che specifica il dominio fittizio. In questo caso:
    Domain = mialan
  • Riavviare nfs-common:
    # service nfs-common restart
  • Creare il file /etc/auto.nfs il cui contenuto varierà a seconda del tipo di automount scelto.
    Metodo indiretto
    nfs -fstype=nfs4,hard,intr 192.168.1.1:/
    Ciò significa che sul client verrà montata la "radice" (la directory contrassegnata da "fsid=0" sul server) delle risorse condivise tramite NFS e il nome sarà "nfs".
    Metodo diretto
    /nfs -fstype=nfs4,hard,intr 192.168.1.1:/
    La risorsa remota sarà montata all'interno della directory /nfs . Questa directory verrà creata automaticamente da "autofs"; accertarsi che non esista.
  • Solo metodo indiretto
    Creare un punto di mount:
    # mkdir /home/condivisa
  • Modificare il file "/etc/auto.master" aggiungendovi la seguente riga in base al tipo di mount scelto.
    Metodo diretto
    /- /etc/auto.nfs
    Ciò vuol dire che il mountpoint sul client sarà /home/nfs cioè ciò che è stato specificato nel file auto.nfs .
    Metodo indiretto
    /home/condivisa /etc/auto.nfs
    Ciò vuol dire che il mountpoint sul client sarà /home/condivisa e al suo interno sarà montata la directory remota con il nome scelto nel file auto.nfs .
  • Riavviare "autofs":
    # service autofs restart
  • Rendere operativo l'automount.
    Metodo diretto
    $ touch /home/nfs
    Metodo indiretto
    $ touch /home/condivisa/nfs
    Per automatizzare l'eecuzione di questo comando è possibile creare uno script che verrà eseguito ogni volta che viene stabilita una connessione. È sufficiente creare il file /etc/network/if-up.d/my-touch-nfs contenente un comando coerente con il tipo di mount scelto.
    Metodo diretto
    #!/bin/sh
    
    
    # File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs
    touch /nfs >/dev/null 2>&1
    Metodo indiretto
    #!/bin/sh
    
    
    # File creato il ... per rendere operativo il mount dinamico della risorsa NFS attraverso autofs
    touch /home/condivisa/nfs >/dev/null 2>&1
  • Rendere eseguibile il file appena creato:
    # chmod +x /etc/network/if-up.d/my-touch-nfs