Nfs (Français)
From FrugalWiki
i18n |
---|
English |
Français |
Contents |
Etablir un réseau de partage NFS entre deux ordinateurs sur Frugalware
Note: Tutoriel en cours d'écriture…
Supposons 2 PCs (PC1 et PC2) relié par ethernet ou wifi à un routeur.
Considérons le PC1 comme étant le serveur et le PC2 comme étant l'hôte.
Programmes nécessaires
Ces paquets sont à installer sur les deux machines.
Configuration
Sur le PC1 (Serveur)
Editer le fichier /etc/exports
Chaque ligne définit un répertoire partagé comme ceci :
dossier_partagé hôte1(options) hôte2(options)...
- dossier_partagé :
chemin du dossier partagé.
- hôte :
l'hôte qui peut accéder à ce partage, l'hôte peut être défini de plusieurs manières.
- une adresse IP.
- un nom d'hôte : on indique le nom complet de l'hôte (il faut qu'il soit inscrit dans le fichier /etc/hosts).
- un nom de domaine avec un joker qui indique toutes les machines d'un domaine, par exemple : *.mondomaine.fr
- un intervalle d'IP avec son masque de sous-réseau ; par exemple : 192.168.0.0/24.
- options :
indique les options de partage ; voici les plus importantes.
- rw : permet la lecture et l'écriture sur un partage pour l'hôte défini (par défaut, les partages sont en mode ro; c'est-à-dire en lecture seule).
- async : permet au serveur NFS de violer le protocole NFS. Cette option améliore les performances mais comporte un risque pour l'intégrité des données en cas de crash.
- sync : est le contraire de async. Le serveur NFS respecte le protocole NFS.
- root_squash : force l'identité de l'utilisateur root vers l'utilisateur anonyme (option par défaut).
- no_root_squash : n'effectue pas de transfert d'identité pour l'utilisateur root.
- all_squash : force l'identité de tous les utilisateurs vers l'utilisateur anonyme.
- anonuid,anongid : indique au serveur NFS l'UID et le GID utilisé pour l'utilisateur anonyme (nobody).
Donc si l'on veut permettre que tous les utilisateurs deviennent un utilisateur anonyme avec un UID/GID 5000 pour le répertoire partagé qui s'appelle originalement /home/partages :
# See exports(5) for a description. # This file contains a list of all directories exported # to other computers. # It is used by rpc.nfsd and rpc.mountd. /home/partages 192.168.0.50(rw,all_squash,anonuid=5000,anongid=5000,sync)
Mais si c'est seulement pour toto, il faut que toto ait les mêmes uid et gid sur les deux micros et on a alors :
# See exports(5) for a description. # This file contains a list of all directories # exported to other computers. # It is used by rpc.nfsd and rpc.mountd. /home/toto/partages 192.168.0.50(rw,sync)
Editez le fichier /etc/hosts.deny
Ce fichier indique quelles machines ont accès à quels programmes.
# hosts.allow This file describes the names of the hosts which are # allowed to use the local INET services, as decided by # the '/usr/sbin/tcpd' server. # # Version: @(#)/etc/hosts.allow 1.00 05/28/93 # Author: Fred N. van Kempen, waltje@uwalt.nl.mugnet.org # ALL:192.168.0.50 # End of hosts.allow
On autorise tout à la machine d'IP indiquée ou alors pour plus de précision, on indique les programmes autorisés pour ce PC :
portmap:192.168.0.50 lockd:192.168.0.50 mountd:192.168.0.50 statd:192.168.0.50 # End of hosts.allow.
Pour un échange symétrique, ce paramétrage est à faire sur les deux PC.
Utilisation du fstab pour le partage Utilisation des répertoires partageables
Pour que le système monte automatiquement ces répertoires, inclure dans le fichier /etc/fstab du PC2 :
pc1:/home/toto/partages /mnt/partages nfs hard,intr,user 0 0
… où pc1 représente le nom de l'autre machine, sur laquelle on partage le répertoire /home/toto/partages que l'on monte dans le répertoire /mnt/partages (par exemple) du PC2.
Les options hard et intr permettent de ne pas attendre indefiniment au boot du premier pc (qui n'a pas d'accès à l'autre pas encore en route).
Extrait du NFS Howto :
L'option user pour permettre à l'utilisateur non root de monter, si nécessaire, le répertoire /mnt/partages. Ce qui s'avère indispensable sur la machine mise en route en premier.
Démarrage des services
Pour l'avoir à chaque démarrage: