Le rôle du client est d'intégrer un accès au système de fichiers d'un hôte distant dans son arborescence locale. On parle de « montage NFS ». Dans un premier temps, on teste les opérations de montage manuel. Ces tests ne peuvent bien sûr aboutir que si une arborescence a été exportée par un serveur.
Ensuite, on teste les opérations de montage automatisées, ou
automontage avec le service
autofs
.
![]() |
Avertissement |
---|---|
Attention ! Les montages manuels et les automontages ne sont pas
compatibles Assurez-vous d'avoir libéré tous les montages statiques
avant de démarrer le service |
Q74. |
Quelle est la commande qui permet de tester la disponibilité du service de montage NFS sur un client distant ? Reprenez la commande qui affiche les listes des procédures distantes disponibles. Elle a été utilisée dans la section Section 4, « Configurer les fonctions communes au client et au serveur NFS ». |
Affichez la liste des procédures disponibles sur le serveur depuis le client NFS. rpcinfo -s fe80::baad:caff:fefe:5 program version(s) netid(s) service owner
100000 2,3,4 local,udp,tcp,udp6,tcp6 portmapper superuser
100024 1 tcp6,udp6,tcp,udp status 104
100005 3,2,1 tcp6,udp6,tcp,udp mountd superuser
100003 4,3 tcp6,tcp nfs superuser
100227 3 tcp6,tcp nfs_acl superuser
100021 4,3,1 tcp6,udp6,tcp,udp nlockmgr superuser
Relativement aux résultats obtenus dans la section
Section 4, « Configurer les fonctions communes au client
et au serveur NFS », la liste des services accessibles via
RPC sur le serveur
NFS s'est étoffée et le service
de montage |
|
Q75. |
Quelle est la commande qui permet d'afficher l'arborescence disponible à l'exportation depuis le serveur NFS ? Recherchez la commande dans la liste des commandes du paquet de service NFS commun au client et au serveur. Recherchez l'option de cette commande qui affiche la liste des exportations. |
Affichez la liste des commandes du paquet dpkg -L nfs-common | egrep 'bin.*mount' /usr/sbin/mount.nfs
/usr/sbin/mountstats
/usr/sbin/showmount
/usr/sbin/mount.nfs4
/usr/sbin/umount.nfs
/usr/sbin/umount.nfs4
Recherchez dans les pages de manuels de la commande showmount, l'option qui permet d'obtenir la liste des exportations. sudo showmount -e fe80::baad:caff:fefe:5
Export list for fe80::baad:caff:fefe:5:
/home/exports/home 2001:678:3fc:65::/64,172.28.101.0/24
/home/exports 2001:678:3fc:65::/64,172.28.101.0/24
Les résultats affichés par la commande showmount avec l'option
|
|
Q76. |
Quelle est la commande à utiliser pour les opérations de montage manuel ? À quel paquet appartient cette commande ? Cette commande est-elle exclusivement liée au protocole NFS ? consultez le support Linux NFS-HOWTO, interrogez la base de données des paquets et recherchez dans les listes de fichiers fournis avec de paquet choisi. |
Recherchez les exemples d'utilisation de la commande mount dans la documentation Linux NFS-HOWTO. Recherchez ensuite cette commande dans la liste des noms de paquets de la distribution. apt search --names-only ^mount$ mount/testing,now 2.41.1-3 amd64 [installé] outils pour monter et manipuler des systèmes de fichiers Le paquet est déjà installé. Listez les commandes liées au montage. dpkg -L mount | grep 'bin.*mount' /usr/bin/mount
/usr/bin/umount
Consultez les pages de manuels de la commande :
La commande mount traite l'ensemble des opérations de montage pour tous les systèmes de fichiers disponibles sur le système, dont NFS. |
|
Q77. |
Comment réaliser un montage manuel de
l'arborescence du serveur NFS
dans le répertoire Créez le répertoire Recherchez dans le document Linux NFS-HOWTO la syntaxe de la commande de montage manuel. Lancez la commande de montage et affichez les propriétés de ce montage. |
Créez le répertoire sudo mkdir /ahome Montez l'arborescence du serveur dans ce dossier après avoir
ajouté l'adresse et le nom de ce serveur dans le fichier
echo "2001:678:3fc:65:baad:caff:fefe:5 nfs-server" | \ sudo tee -a /etc/hosts sudo mount nfs-server:/home /ahome Affichez les propriétés du montage. mount | grep nfs nfs-server:/home on /ahome type nfs4 (rw,relatime,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,fatal_neterrors=none,proto=tcp6, timeo=600,retrans=2,sec=sys,clientaddr=2001:678:3fc:65:baad:caff:fefe:6, local_lock=none,addr=2001:678:3fc:65:baad:caff:fefe:5) Repérez les adresses du client et du serveur dans la copie d'écran ci-dessus. Dans l'exemple ci-dessus :
Voici une interprétation résumée des propriétés du montage.
|
|
Q78. |
Comment lancer une capture de trafic avec tshark sur le serveur avant d'exécuter la commande ls -lAh /ahome sur le client ? Comment interpréter les informations capturées ? |
Affichez la liste des trames capturées. tshark -r nfs-list.pcap 1 0.000000000 2001:678:3fc:65:baad:caff:fefe:6 → 2001:678:3fc:65:baad:caff:fefe:5 NFS 258 V4 Call GETATTR FH: 0xcd09674b 2 0.001127472 2001:678:3fc:65:baad:caff:fefe:5 → 2001:678:3fc:65:baad:caff:fefe:6 NFS 330 V4 Reply (Call In 1) GETATTR 3 0.001849966 2001:678:3fc:65:baad:caff:fefe:6 → 2001:678:3fc:65:baad:caff:fefe:5 TCP 86 677 → 2049 [ACK] Seq=173 Ack=245 Win=501 Len=0 TSval=2629983171 TSecr=2710409161 4 0.002436129 2001:678:3fc:65:baad:caff:fefe:6 → 2001:678:3fc:65:baad:caff:fefe:5 NFS 258 V4 Call GETATTR FH: 0xcd09674b 5 0.002549903 2001:678:3fc:65:baad:caff:fefe:5 → 2001:678:3fc:65:baad:caff:fefe:6 NFS 330 V4 Reply (Call In 4) GETATTR 6 0.002889220 2001:678:3fc:65:baad:caff:fefe:6 → 2001:678:3fc:65:baad:caff:fefe:5 NFS 258 V4 Call GETATTR FH: 0x8854dd26 7 0.002962282 2001:678:3fc:65:baad:caff:fefe:5 → 2001:678:3fc:65:baad:caff:fefe:6 NFS 330 V4 Reply (Call In 6) GETATTR 8 0.044790234 2001:678:3fc:65:baad:caff:fefe:6 → 2001:678:3fc:65:baad:caff:fefe:5 TCP 86 677 → 2049 [ACK] Seq=517 Ack=733 Win=501 Len=0 TSval=2629983214 TSecr=2710409163 Interprétiez les transactions NFS :
Notez qu'il est possible d'afficher tous les détails d'une trame capturée. Voici un exemple pour la trame numéro 5. tshark -r nfs-list.pcap -Y "frame.number == 5" -V |
|
Q79. |
Quelles seraient les opérations à effectuer pour rendre le montage NFS statique permanent ? Recherchez le fichier de configuration système responsable des montages statiques des partitions. Il est inutile de modifier le fichier de configuration du système sachant que l'on change de méthode de montage dans la section suivante. |
Il faudrait éditer le fichier nfs-server:/home /ahome nfs4 0 0 |
|
Q80. |
Quelle est la commande à utiliser pour
démonter le dossier
Recherchez cette commande dans la liste des outils fournis avec
le paquet |
Utilisez la commande umount pour « détacher » un dispositif de stockage du système de fichiers. sudo umount /ahome mount | grep nfs Cette dernière commande ne produit aucun résultat. Il n'y a plus de montage NFS sur le client. |
Comme il n'existe pas de gestion centralisée des identités pour
les manipulations de ce support de travaux pratiques, on utilise un
artifice permettant de faire correspondre les identifiants
UID/GID
entre le client et le
serveur NFS : la création
de deux comptes utilisateurs ayant les mêmes valeurs pour ces
identifiants.
On a déjà créé le compte utilisateur sur le serveur. Voir la Section 5.3, « Créer un compte utilisateur sur le serveur ». À la suite de cette création de compte, on a relevé les attributs suivants :
etu-nfs:x:1002:1002:NFS user,,,:/ahome/etu-nfs:/bin/bash
Il s'agit maintenant de réaliser l'opération symétrique sur le client.
Notez que les chemins qui désignent les répertoires utilisateurs des deux comptes sont aussi identiques. Le schéma de nommage entre client et serveur est cohérent.
Les identifiants numériques UID/GID
jouent un rôle important dans la suite
des manipulations. Voir Section 7,
« Gérer les droits sur le système de fichiers
NFS ».
Dans cette section, nous reprenons le processus de montage précédent en utilisant le service d'automontage. L'objectif est de rendre les opérations d'accès au système de fichiers réseau totalement transparentes pour l'utilisateur ; le montage manuel doit donc être évité autant que possible.
Plusieurs implémentations de ce service sont disponibles. Nous nous limiterons ici au logiciel utilisant les fonctions du noyau Linux.
Q82. |
Quel est le paquet qui correspond au service d'automontage associé au noyau ? Recherchez les mots clé automount et Installez le paquet identifié. |
apt -o "Apt::Cmd::Disable-Script-Warning=1" \ search automount noyau | cat En train de trier… Recherche en texte intégral… autodir/testing 0.99.9-18+b1 amd64 crée automatiquement les répertoires home et group pour les comptes LDAP/NIS/SQL et locaux autofs/testing 5.1.9-1.2+b2 amd64 montage automatique pour Linux basé sur le noyau autofs-hesiod/testing 5.1.9-1.2+b2 amd64 gestion de la carte Hesiod pour autofs autofs-ldap/testing 5.1.9-1.2+b2 amd64 gestion des schémas LDAP pour autofs Installez le paquet sudo apt -y install autofs |
|
Q83. |
Quels sont les fichiers de configuration du
service d'automontage à éditer ou créer pour que l'utilisateur
Utilisez la catégorie 5 des pages de manuels du service
man 5 autofs Consultez aussi la page du fichier principal de configuration du
service : man auto.master |
Le montage indirect avec Définissez la racine de montage
|
|
Q84. |
Quelles sont les conditions à respecter sur
le client et le serveur NFS pour
que l'utilisateur Recherchez les attributs d'un compte utilisateur qui correspondent aux propriétés des objets d'un système de fichiers au sens général. |
getent passwd etu-nfs etu-nfs:x:1002:1002:Etudiant NFS,,,:/ahome/etu-nfs:/bin/bash Les identifiants numériques |
|
Q85. |
Comment valider le fonctionnement du service de montage dynamique des répertoires utilisateurs ? Recherchez le moyen d'ouvrir une session avec l'identité de
l'utilisateur Vérifiez que le montage NFS est bien utilisé avec les commandes mount et df par exemple. |
Comme lors du test effectué côté serveur, utilisez l'une des
deux commandes suivantes pour prendre l'identité de l'utilisateur
Prenez l'identité de l'utilisateur su - etu-nfs Mot de passe : etu-nfs@clnt:~$ Vérifiez que le répertoire courant est bien celui de l'utilisateur. pwd /ahome/etu-nfs Affichez les propriétés du montage NFS. mount | grep nfs nfs-server:/home/etu-nfs on /ahome/etu-nfs type nfs4 (rw,relatime,vers=4.2,rsize=131072,wsize=131072, namlen=255,hard,fatal_neterrors=none,proto=tcp6,timeo=600,retrans=2,sec=sys, clientaddr=2001:678:3fc:65:baad:caff:fefe:6,local_lock=none,addr=2001:678:3fc:65:baad:caff:fefe:5) Affichez les informations sur l'espace de stockage disponible. df -hT | grep nfs nfs-server:/home/etu-nfs nfs4 118G 3,3G 109G 3% /ahome/etu-nfs |