gblend-1
Accueil du site > Docs > Réseau > NFSv4

NFSv4

Publié le samedi 21 juillet 2007, mis a jour le dimanche 21 septembre 2008, par Stephane Malinet



Introduction

NFSv4 est fortement inspiré d’AFS (Andrew file system) qui, lui-même s’inspirait de NFSv3, la boucle étant ainsi bouclée. NFSv4 est également conçu pour pallier les lacunes des versions précédentes et se pose en successeur et en concurrent de Samba, NFSv3 ou de AFS. Par rapport à ses prédécesseurs, NFSv4 embarque de nombreuses avancées telles que :

- une technologie de cache agressive (délégation)
- le regroupement des requêtes réseau (Compound request)
- la sécurisation négociée et le chiffrement des données : Kerberos 5, certificats (SPKM), clefs publiques/privées (LIPKEY)
- la capacité pour les clients de maintenir des sessions ou de les récupérer malgré un crash serveur ou une panne du réseau
- la possibilité (à terme) de rediriger la charge de serveurs saturés vers un autre serveur, de manière transparente pour les clients
- le support d’attributs fichier nommés par l’utilisateur.

Dans ce qui suit nous procéderons à une installation sans sécurisation, c’est-à-dire à la méthode NFSv3.

Configuration noyau

Commençons par activer les modules NFSv4 dans le noyau :

File systems  --->
 Network File Systems  --->
   <M> NFS file system support                                                                                                        
    [*]   Provide NFSv3 client support                                                                                                  
    [ ]     Provide client support for the NFSv3 ACL protocol extension
    [*]   Provide NFSv4 client support (EXPERIMENTAL)
    [*]   Allow direct I/O on NFS files
    <M> NFS server support
    [*]   Provide NFSv3 server support
    [ ]     Provide server support for the NFSv3 ACL protocol extension
    [*]     Provide NFSv4 server support (EXPERIMENTAL)

re-compilez votre noyau et installez-le.

Configuration serveur

Passons à la configuration côté serveur. Nous avons besion du paquet net-fs/nfs-utils :

# emerge -av net-fs/nfs-utils

La différence avec NFSv3 se situe dans la visualisation du point de montage qui ressemble plus à celle d’un serveur FTP, c’est-à-dire avec une racine virtuelle où seront montés les repertoire locaux. En découle une syntaxe différente elle aussi :

# vi /etc/exports

/exports 192.168.0.0/24(fsid=0,ro,sync,no_root_squash,no_subtree_check)
/exports/babykart 192.168.0.0/24(rw,nohide,insecure,no_root_squash,no_subtree_check,sync)
/exports/p2p 192.168.0.0/24(rw,nohide,insecure,no_root_squash,no_subtree_check,sync)

Créez les repertoires manquant et montez les repertoires appropriés :

# mkdir /exports
# mkdir /exports/babykart
# mkdir /exports/p2p
# mount -o bind /home/babykart /exports/babykart
# mount -o bind /home/p2p /exports/p2p

Il ne reste plus qu’à lancer le serveur NFS :

# rc-update add nfs default
# /etc/init.d/nfs start

Attention : Si vous utilisez netfilter, pensez à ouvrir le port 2049 pour le protocole TCP

Configuration client

Côté client, même si cela n’est pas nécéssaire, je vous invite à installer le paquet net-nds/portmap qui améliore considérablement la vitesse de montage des points NFSv4 :

# emerge -av net-nds/portmap
# /etc/init.d/portmap start
# rc-update add portmap default

Chargez le module noyau nfs si ce n’est pas déjà fait :

# modprobe nfs

Passez à la modification du fichier /etc/fstab et ajoutez la ligne qui suit :

192.168.1.2:/ /mnt/nfs4 nfs4 rw,hard,intr,proto=tcp,port=2049,rsize=32768,wsize=32768,noauto         0 0

Créez le repertoire manquant et monter le lien NFS :

# mkdir /mnt/nfs4
# mount -v /mnt/nfs4

Voilà, si vous allez dans le repertoire /mnt/nfs4, vous devriez trouver deux repertoires : babykart et p2p.

Liens


Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | SPIP | squelette