autofs monte un système de fichiers uniquement quand on accède à son point de montage, puis le démonte tout seul après une période d'inactivité. Ce guide montre comment installer l'automounter, écrire des maps pour un disque local, un partage NFS et des répertoires personnels avec un joker, puis vérifier que le montage se déclenche à l'accès et disparaît après le timeout. Pour administrateurs intermédiaires, sur Debian, Ubuntu ou RHEL. C'est un objectif à la fois RHCSA et LFCS. Sorties issues d'un test AlmaLinux 10.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Ce qu'est le montage à la demande et pourquoi il vaut mieux que
fstabdans certains cas. - Installer et activer le service autofs.
- Écrire une map indirecte, une map directe et une map à joker.
- Monter un disque local, un partage NFS et des home directories automatiquement.
- Vérifier le déclenchement et diagnostiquer un montage qui ne part pas.
À quoi sert le montage à la demande
Section intitulée « À quoi sert le montage à la demande »Un montage classique dans /etc/fstab est permanent : le système de fichiers est monté au démarrage et le reste. C'est parfait pour la partition racine ou un disque de données toujours utilisé. Mais pour un partage NFS consulté une fois par semaine, ou les répertoires personnels de cent utilisateurs dont trois sont connectés, garder tous les montages actifs en continu gaspille des ressources et fragilise le démarrage : un serveur NFS injoignable au boot peut bloquer la machine.
autofs répond à ce besoin. Il surveille un point de montage et déclenche le montage seulement au premier accès (un ls, un cd, l'ouverture d'un fichier). Après un délai sans activité, le timeout, il démonte automatiquement. Le partage n'existe, du point de vue du système, que pendant qu'on s'en sert.
Installer autofs
Section intitulée « Installer autofs »Le paquet s'appelle autofs sur toutes les distributions. Pour monter du NFS, ajoutez le paquet client NFS (nfs-common sur Debian/Ubuntu, nfs-utils sur RHEL).
sudo apt updatesudo apt install autofs nfs-commonsudo dnf install autofs nfs-utilsActivez ensuite le service et vérifiez qu'il tourne :
sudo systemctl enable --now autofssystemctl is-active autofsLa sortie doit afficher active. Le service est là, mais il ne fait rien tant qu'aucune map ne lui dit quoi monter et où.
Comment autofs est organisé
Section intitulée « Comment autofs est organisé »autofs lit une map maîtresse, /etc/auto.master, qui associe chaque point de montage parent à un fichier de map décrivant ce qu'il faut monter dessous. Sur les distributions récentes, on n'édite pas directement /etc/auto.master : on dépose un fichier .autofs dans /etc/auto.master.d/, automatiquement inclus.
Une ligne de map maîtresse suit ce format :
/point-de-montage-parent /etc/fichier-de-map [options]Le fichier de map, lui, décrit chaque montage. Il existe deux formes principales :
-
Map indirecte :
autofsgère un dossier parent et crée les sous-dossiers à la demande. C'est la forme la plus courante. Chaque ligne associe une clé (le nom du sous-dossier) à une source :clé -options source -
Map directe : chaque montage a un chemin absolu indépendant. Dans
/etc/auto.master, le point parent est le symbole/-, et la clé de la map est le chemin complet du montage.
Le champ source désigne quoi monter : un partage réseau (serveur:/export), un périphérique local (:/dev/sdb1), ou une image de fichier. Voyons les trois cas concrets.
Monter un disque local à la demande
Section intitulée « Monter un disque local à la demande »Premier cas, le plus net : monter un système de fichiers local seulement quand on y accède. Ici, une image XFS sert de disque de démonstration.
-
Préparer le système de fichiers à monter.
Fenêtre de terminal sudo mkdir -p /srv/backingsudo truncate -s 512M /srv/backing/data.imgsudo mkfs.xfs -q /srv/backing/data.imgmkfs.xfsrefuse les images de moins de 300 Mo : gardez au moins 512 Mo. -
Déclarer le point parent dans
/etc/auto.master.d/.Fenêtre de terminal echo '/mnt/local /etc/auto.local --timeout=30' \| sudo tee /etc/auto.master.d/local.autofsL'option
--timeout=30démonte après 30 secondes d'inactivité. -
Écrire la map indirecte. La clé
datadeviendra le sous-dossier/mnt/local/data; l'optionloopdemande àmountd'attacher l'image à un périphérique loop.Fenêtre de terminal echo 'data -fstype=xfs,loop :/srv/backing/data.img' \| sudo tee /etc/auto.local -
Recharger autofs pour qu'il prenne la nouvelle map.
Fenêtre de terminal sudo systemctl restart autofs
Vérifiez maintenant le comportement clé. Avant tout accès, rien n'est monté :
findmnt /mnt/local/data# (aucune sortie : le montage n'existe pas encore)L'accès déclenche le montage. Un simple ls ou une écriture suffit :
touch /mnt/local/data/preuve.txtfindmnt /mnt/local/dataTARGET SOURCE FSTYPE OPTIONS/mnt/local/data /dev/loop0 xfs rw,relatime,seclabel,...Le système de fichiers est monté sur un périphérique loop, exactement comme si vous l'aviez fait à la main, mais il n'est apparu qu'au moment où vous en aviez besoin. Laissez passer le timeout sans y toucher, et findmnt ne renvoie plus rien : autofs a démonté tout seul.
Monter un partage NFS à la demande
Section intitulée « Monter un partage NFS à la demande »Le cas d'usage roi d'autofs, celui attendu en RHCSA et LFCS, est le montage NFS. La configuration est identique, seule la source change : un chemin serveur:/export.
echo '/mnt/nfs /etc/auto.documents --timeout=60' \ | sudo tee /etc/auto.master.d/documents.autofsecho 'documents -rw,soft serveur-nfs.exemple:/srv/nfs/documents' \ | sudo tee /etc/auto.documentssudo systemctl restart autofsUn ls /mnt/nfs/documents monte alors le partage à la demande. L'option soft évite qu'un processus reste bloqué indéfiniment si le serveur disparaît (à réserver aux données non critiques ; pour de l'écriture sensible, préférez le défaut hard).
Monter les répertoires personnels avec un joker
Section intitulée « Monter les répertoires personnels avec un joker »Déclarer une ligne par utilisateur serait ingérable. La map à joker résout ce cas classique : le caractère * correspond à n'importe quelle clé demandée, et l'esperluette & en reprend la valeur dans la source.
echo '/mnt/homes /etc/auto.homes --timeout=30' \ | sudo tee /etc/auto.master.d/homes.autofsecho '* -fstype=nfs,rw serveur-nfs.exemple:/export/homes/&' \ | sudo tee /etc/auto.homessudo systemctl restart autofsAvec cette seule ligne, accéder à /mnt/homes/alice monte serveur-nfs.exemple:/export/homes/alice, et /mnt/homes/bob monte le sien, sans qu'aucun des deux n'ait été déclaré explicitement. C'est ainsi que l'on sert des répertoires personnels à la demande sur un parc entier.
Vérifier et dépanner
Section intitulée « Vérifier et dépanner »Après chaque changement de map, systemctl restart autofs recharge la configuration. Trois commandes suffisent au diagnostic courant :
findmnt <point>confirme qu'un montage est bien actif (et son type réel).systemctl status autofsetjournalctl -u autofsremontent les erreurs du service.sudo automount -mliste les maps qu'autofsa chargées.
Quand un montage refuse de se déclencher, arrêtez le service et lancez le démon au premier plan en mode bavard : chaque tentative d'accès y affiche la cause exacte.
sudo systemctl stop autofssudo automount -f -v# dans un autre terminal : ls /mnt/local/dataVoici les symptômes les plus fréquents et leur correction.
| Symptôme | Cause probable | Solution |
|---|---|---|
| L'accès ne monte rien, dossier vide | Erreur de syntaxe dans la map | Relancer avec automount -f -v et corriger la ligne fautive |
Permission denied sur un home NFS sous SELinux | Booléen SELinux bloquant | sudo setsebool -P use_nfs_home_dirs on |
Montage NFS annoncé mais type xfs | Serveur sur la même machine (bind local) | Utiliser un serveur NFS distant |
autofs ou le montage automatique de systemd
Section intitulée « autofs ou le montage automatique de systemd »systemd propose une alternative avec l'option x-systemd.automount dans fstab ou une unité .automount : elle aussi monte à la demande. La différence tient à la centralisation. autofs brille pour les maps à joker et les grands parcs (des centaines de home directories réseau depuis quelques lignes) ; le montage automatique systemd convient mieux à quelques points fixes déjà décrits dans fstab. Pour un montage NFS unique et permanent, fstab avec l'option _netdev reste le plus simple.
À retenir
Section intitulée « À retenir »autofsmonte à la demande et démonte après le timeout : le partage n'occupe des ressources que pendant l'usage.- La configuration se fait dans
/etc/auto.master.d/*.autofs(le point parent) et un fichier de map (les montages). - Une map indirecte gère un dossier parent ; une map directe utilise
/-et des chemins absolus ; une map à joker (*et&) sert un montage par clé. - La source peut être locale (
:/dev/..., imageloop) ou réseau (serveur:/export). - Un serveur NFS local donne un bind, pas du NFS : testez toujours avec un serveur distant.
- Diagnostic :
findmnt,journalctl -u autofs, etautomount -f -vpour voir le déclenchement en direct.
Pour aller plus loin
Section intitulée « Pour aller plus loin »- Monter un système de fichiers et le rendre persistant : le montage permanent par
fstabet UUID, le complément d'autofs. - Utiliser NFS sur Linux : configurer le serveur et le client NFS que vos maps
autofsmonteront.