meta données pour cette page
Partage de fichier avec NFS (Debian)
NFS, Network File System est un protocole de couche 7 (Application) du modèle OSI. Ce système permet de partager rapidement et sans complexité de configuration du service des données entre les machines de type UNIX. Il existe cependant des versions pour supporter l'OS Macintosh ou Windows.
Depuis le serveur
Admettons que notre serveur est une Debian 8 avec un le noyau 3.16 dont son IP est 192.168.42.143.
Nous avons besoin de ce paquet binaire :
apt-get install nfs-kernel-server
Créons le fichier de partage :
mkdir /partage
Indiquons-le explicitement à NFS :
nano /etc/exports
On ajoute ces informations :
/partage 192.168.42.0/24(rw,no_root_squash)
On indique ici que le dossier /partage sera disponible pour les machines présent sur le réseau 192.168.1.0/24 et on utilise ces paramètres :
- rw : droit de lecture et d'écriture (ou ro pour lecture seule)
- no_root_squash : autorise les droits root sur le dossier monté sur la machine cliente (ou root_squash, l'option qui n'autorise pas les droits de l'utilisateur root)
On peut également ajouter ces options :
- insecure : Ecoute sur les ports supérieure à 1024 (ports client)
- no_subtree_check : Désactive la vérification de l'intégrité des fichiers et améliore les transfères
- async : Autorise le serveur à répondre favorablement au client même si le fichier n'est encore écrit
Il reste plus qu'a relancer le service :
/etc/init.d/nfs-kernel-server restart
Depuis le client
Pour vérifier que la configuration ci-dessus fonctionne bien, installons le logiciel client :
apt-get install nfs-common
Puis observons les dossiers partagés :
showmount -e 192.168.42.143
Export list for 192.168.42.143: /partage 192.168.42.0/24
Ainsi on peut monter le dossier comme suit :
mount -t nfs 192.168.42.143:/partage /mnt/
Ou le démonter :
umount -l /mnt/
Pour que ce point de montage soit permanent il est nécessaire de modifier fstab :
nano /etc/fstab
Et d'ajouter cette ligne :
192.168.42.143:/partage /mnt nfs soft,timeo=5,intr,rsize=8192,wsize=8192 0 0
Ces options veulent dire :
- soft = délais d'attente d'une réponse courte
- timeo = temps d'attente en milliseconde avant de renvoyer une nouvelle requête au serveur
- rsize=X,wsize=X : taille maximale des requêtes
Pour comprendre les autres options, rapportez-vous à la commande : man mount.
Conseils
Si vous ave ce type d'erreurs :
mount.nfs: access denied by server while mounting
Vérifiez que l'arborescence des dossiers soit en lecture et execution! Peut être qu'un chmod 755 devrait faire l'affaire.