NFS Serveur et Client
Par Minitux le mardi, septembre 1 2009, 23:02 - Réseau - Lien permanent
NFS (Network File System) est un protocole qui permet d'accéder à des fichiers à travers le réseau.
Ceci permet aux administrateurs système de stocker des ressources sur des serveurs centralisés sur le réseau.
Ce système de fichiers permet de partager des données essentiellement entre stations Unix.
L'accès aux données est quasiment aussi simple que d'y accéder en local.
Voici comment installer le serveur et le client et partager les différents répertoires.
1- Installation du serveur
Le serveur écoute sur le port 2049 en tcp et udp.
Il suffit d'installer le paquet nfs-kernel-server ainsi que les dépendances.
# aptitude install nfs-kernel-server
Il faut ensuite exporter les répertoires que l'on souhaite rendre accessible aux clients.
Nous allons les exporter sur le serveur.
# vi /etc/exports
Ajoutez ceci si vous voulez exporter /home et /var/nfs
/home 192.168.1.10(rw,no_root_squash)
/var/nfs 192.168.1.0/24(rw,root_squash)
L'option rw permet d'exporter en lecture-écriture (ro pour lecture seule).
Les droits seront valables si les utilisateurs client/serveur ont le même ID, sinon mettre les droits nobody:nogroup
L'option no_root_squash signifie que le root de la machine local a les droit sur le repertoire.
Pour le contraire utilisez root_squash c'est l'option par défaut.
A chaque fois que vous modifiez le fichier pensez à recharger le fichier :
# exportfs -a
Pour plus d'infos sur les différentes options man exports
2- Installation sur le poste client
Sur le poste client il faut installer les paquets suivants :
# aptitude install nfs-common portmap
Il suffit ensuite de monter le répertoire distant en local.
# mount -t nfs servernfs.domain:/var/nfs /mnt
Pour vérifier que tout est monté :
$ mount
servernfs.domain:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,addr=servernfs.domain)
SI vous souhaitez le monter à chaque démarrage, ajoutez la ligne suivante au fichier fstab:
# vi /etc/fstab
servernfs.domain:/var/nfs /mnt nfs soft,timeo=5,intr,rsize=8192,wsize=8192 0 0
Pour plus d'infos man mount.
3- Quelques tests
Sur le client, nous allons essayer de créer un fichier sur le serveur NFS.
$ touch /mnt/test.txt
Sur le serveur
# ls -l /var/nfs
-rw-r--r-- 1 nobody nogroup 0 2009-08-29 13:49 test.txt