Cet article a pour but de présenter rapidement la mise en place d’un serveur NFS v4 sous Debian Lenny avec des clients sous Ubuntu 9.10. D’autres articles suivront peut-être pour agrémenter ce document si je trouve le temps.
Mise en place de partages NFS v4 :
NFS v4 est la nouvelle version du protocole de partages de fichiers historique pour *NIX Cette version apporte de nombreuses améliorations telles que :
sécurité via l’utilisation de kerberos pour l’authentification
la fiabilité avec l’utilisation de TCP par défaut
le passage à travers un firewall est beaucoup plus simple en utilisant par défaut le port 2049
le support de l’ipv6
réplication, failover et récupération des sessions en cas de panne du serveur
Cette version du protocole est incompatible avec les anciennes versions mais, cette incompatibilité est largement compensée par les améliorations apportées et la migration de l’une à l’autre est relativement simple à effectuer.
Mise en place sur serveur :
Le serveur NFS tourne sur une Debian Lenny à jour (5.0.4), les versions des outils utilisés sont tout simplement celles contenues dans les dépôts.
apt-get install nfs-kernel-server nfs-common portmap
NFS 4 permet de monter des partages en fonction d’une racine virtuelle. Ce partage racine est remarquable dans le fichier /etc/exports car il contient fsid=0. Par exemple pour définir la racine des répertoires NFS partagés sous /music il faut ajouter dans le fichier /etc/exports :
/music *(rw,fsid=0,insecure,no_subtree_check)
La grande différence entre NFS v3 et NFS v4 est là, pour monter sur un client la racine des partage en NFS v3 il fallait faire :
mount -t nfs server:/multimedia /mnt
alors qu’avec NFS v4 la commande devient :
mount -t nfs4 server:/ /multimedia
Chaque sous-répertoire du répertoire /music sera partagé en fonction de la racine virtuelle. Donc pour partager un répertoire à l’extérieur de cette racine virtuelle, vous pouvez utiliser l’option –bind de mount(1). Par exemple pour partager les répertoires utilisateurs, utilisez la commande suivante pour ajouter le répertoire à la racine virtuelle :
mount –bind /home /multimedia/films
un répertoire /export/home est alors présent dans /export. Pour exporter ce répertoire, vous pouvez utiliser la syntaxe habituelle des exports NFS.
Configuration du client :
On commence par installer les paquets :
apt-get install nfs-common portmap
Pour monter un partage NFS, en supposant que les partages du serveur se situent dans /multimedia, il faut utiliser la commande :
mount -t nfs4 serveur:/ /multimedia
alors qu’avec NFS v3 et inférieure la commande aurait été :
mount -t nfs server:/export /multimedia
Dans le fichier /etc/fstab le point de montage sera de cette forme :
serveur:/ /mnt nfs4 wsize=32768,rsize=32768 0 0
Voilà, vous avez un serveur NFS fonctionnel. A consommer sans modération !