Next: Droits d'accès.
Up: Système de fichiers en
Previous: Logiciels.
Table des matières
Pour partager un répertoire avec une machine distante, il faut que
les requêtes DNS directes et inverses fonctionnent aussi bien pour
la machine serveur que pour les machines clientes. Le DNS est étudié
aux chapitres 28 (volet client)
et 41 (volet serveur). Si
vous envisagez de seulement tester NFS et de partager les répertoires
avec votre machine locale (ce que nous sommes en train de voir), vous
pourriez constater que DNS est déjà en fonctionnement alors
qu'il n'est pas configuré correctement. Le fichier /etc/hosts
de votre machine locale devrait au moins posséder des entrées correctes
(voir la section 28.3).
La première étape consiste à choisir le répertoire que vous souhaitez
partager. Une astuce consiste à partager votre CD-ROM avec l'ensemble
du réseau LAN. Ceci vous permet d'opérer en toute sécurité car le
lecteur CD-ROM n'est accessible qu'en lecture seule. Créez un fichier
/etc/exports contenant:
/mnt/cdrom 192.168.1.0/24(ro) localhost(ro)
|
Vous pouvez immédiatement constater que le format du fichier /etc/exports
consiste simplement en une ligne pour chaque répertoire à partager.
A la suite des répertoires à partager, vient une liste des hôtes qui
ont l'autorisation de se connecter. Dans le cas présent, les machines
autorisées à accéder au lecteur CD-ROM sont celles dont les adresses
IP se répartissent sur 24 bits sur 192.168.1,
en ce compris localhost qui doit être déclaré
(voir la section 26.8; pour rappel,
si nous supposons être dans un réseau de classe C, il y a 32 - 24
= 8 bits pour les adresses réseau, soit
adresses).
A présent, montons notre CD-ROM de manière usuelle:
[NdT: il va de soi qu'il faut adapter le nom du périphérique tel que
décrit dans /etc/fstab (/dev/hdc,
par exemple).]
mkdir -p /mnt/cdrom
mount -t iso9660 -o ro /dev/cdrom
/mnt/cdrom
|
Maintenant, démarrons les démons NFS séquentiellement:
portmap
rpc.mountd
rpc.nfsd
rpc.lockd
|
Si jamais vous effectuez des modifications dans /etc/exports,
vous devriez aussi poursuivre en exécutant:
ce qui a pour effet de relire le fichier /etc/exports.
Si vous entrez la commande exportfs sans
options, vous devriez obtenir:
/mnt/cdrom 192.168.1.0/24
/mnt/cdrom localhost.localdomain
|
c'est-à-dire une liste des répertoires partagés et des hôtes autorisés
à y accéder.
Il est utile de tester les montages depuis votre machine locale avant
d'effectuer les tests sur une machine distante. Ici, nous réalisons
l'opération de montage de NFS:
mkdir /mnt/nfs
mount -t nfs localhost:/mnt/cdrom
/mnt/nfs
|
Vous constatez que la commande mount considère
le répertoire de la machine distante comme un ``périphérique''
bien que son type soit nfs
au lieu d'ext2, ext3,
vfat ou iso9660.
Le nom d'hôte distant est suivi du signe ``deux points'', lui-même
suivi du répertoire à partager. Le chemin est relatif à la racine.
Cette syntaxe est inusuelle comparativement à d'autres services qui
nomment les fichiers relativement à un répertoire ``de haut niveau''
(ce qui est le cas de FTP et des serveurs web). Le test-clé consiste
à lancer ls sur le répertoire /mnt/nfs
de façon à vérifier que son contenu est bien le même que celui de
/mnt/cdrom. Supposons que notre serveur
s'appelle cdromserver, nous pouvons lancer
la même commande sur toutes les machines clientes:
mkdir /mnt/nfs
mount -t nfs cdromserver:/mnt/cdrom
/mnt/nfs
|
Si quelque chose va mal, vous rechercherez certainement tous les processus
incluant rpc, mount,
nfs ou portmap.
L'arrêt complet de nfs équivaut à stopper
tous ces processus, au cas où vous désireriez repartir de zéro. Il
est également utile de vérifier la dernière partie des journaux:
tail -f /var/log/messages
tail -f /var/log/syslog
|
dans une console différente pour attendre les messages d'erreur (ou
de succès). Il faut toujours faire cela quelle que soit la configuration
que vous mettez en place. Notez qu'il n'est pas toujours évident que
NFS échoue à cause d'un problème de requête DNS directe ou inverse;
aussi, au préalable, vérifiez en double que ces requêtes fonctionnent.
mount ne devrait pas donner davantage de
renseignements que le message classique d'erreur de NFS: ``mount: <xyz>
failed, reason given by server: Permission denied''. Un DNS erroné
est également indiqué par des pauses d'une minute en cours d'opération.
En majorité, les distributions n'exigeront pas que vous démarreriez
ou que vous arrêtiez les démons cités précédemment. A l'instar de
la plupart des services, la mise en oeuvre de NFS par RedHat peut
être invoquée simplement avec:
/etc/init.d/nfs start
/etc/init.d/nfslock start
|
ou avec /etc/rc.d/init.d/ au lieu de /etc/init.d/.
Sur Debian, les commandes équivalentes sont:
/etc/init.d/nfs-common start
/etc/init.d/nfs-kernel-server start
|
Next: Droits d'accès.
Up: Système de fichiers en
Previous: Logiciels.
Table des matières
1-01-2006