Tutoriel Linux

Autofs sous Linux : monter un partage NFS à la demande

Débutant5 min de lecture

Un serveur Debian qui attend un export NFS indisponible peut démarrer avec un répertoire vide, un montage raté ou un délai inutile. Pour un partage utilisé par intermittence, comme une archive projet ou un dépôt, Autofs monte le chemin au premier accès et le libère après une période d’inactivité.

La procédure suivante vise un serveur Debian ou Ubuntu avec un export NFS déjà disponible. Elle commence par un montage manuel, puis configure un point indirect /srv/nfs/projets. Gardez /etc/fstab pour un volume dont un service a besoin dès le démarrage.

Manchot Tux ouvrant un dossier réseau relié à un serveur NFS
Autofs monte le partage lorsque le répertoire est réellement ouvert.

Tester l’export NFS avant de modifier Autofs

Autofs masque l’opération de montage derrière l’accès à un répertoire. Il ne corrige ni une exportation NFS absente, ni un DNS cassé, ni des droits refusés par le serveur. Installez d’abord le client NFS sur Debian ou Ubuntu, puis testez le chemin avec mount dans un répertoire temporaire.

sudo apt update
sudo apt install nfs-common
sudo mkdir -p /mnt/nfs-manual-test
sudo mount -t nfs4 nfs.exemple.lan:/srv/nfs/projets /mnt/nfs-manual-test
findmnt -T /mnt/nfs-manual-test
ls -la /mnt/nfs-manual-test
sudo umount /mnt/nfs-manual-test
sudo rmdir /mnt/nfs-manual-test

Remplacez le serveur et le chemin par l’export fourni par votre équipe. findmnt doit afficher une source NFS et le répertoire doit être lisible avec les droits attendus. Si ce test échoue, arrêtez-vous ici. Configurer Autofs avant d’avoir un montage NFS fonctionnel complique le diagnostic.

showmount -e nfs.exemple.lan peut aider sur des serveurs qui publient encore le protocole MOUNT. Ne l’utilisez pas comme test obligatoire : un serveur NFSv4 peut ne rien exposer par cette commande tout en acceptant le montage documenté.

Déclarer un point de montage indirect

Sur Debian et Ubuntu, installez autofs après le test NFS. Le fichier /etc/auto.master associe un répertoire racine à une carte. La carte contient ensuite les sous-répertoires qui déclenchent les montages. Le format d’une carte indirecte est détaillé dans le manuel autofs.

sudo apt install autofs
sudoedit /etc/auto.master

Ajoutez cette ligne dans /etc/auto.master :

/srv/nfs /etc/auto.nfs --timeout=120

/srv/nfs est le point Autofs. Le dossier projets sera créé sous cette racine lors du premier accès. Le délai --timeout=120 demande un démontage après deux minutes d’inactivité. Ne mettez pas 0 ici : le démontage automatique serait désactivé.

Créez ensuite la carte référencée et gardez-la en format texte. Une carte de type program peut exécuter un programme pour générer une entrée. Ce mécanisme a sa place dans une administration maîtrisée, pas dans cette configuration de départ.

sudo install -m 644 /dev/null /etc/auto.nfs
sudoedit /etc/auto.nfs

Ajoutez une entrée par partage :

projets -fstype=nfs4,rw nfs.exemple.lan:/srv/nfs/projets

Le mot projets forme le chemin local /srv/nfs/projets. La partie après les options est l’export NFS validé plus haut. Évitez les doubles barres dans les chemins de carte. Le manuel auto.master indique que ces chemins peuvent provoquer des échecs difficiles à expirer.

Je réserverais ce montage indirect aux répertoires ouverts de temps à autre. Pour un volume qui contient une base de données, un conteneur ou les fichiers indispensables à un service systemd, je garderais un montage explicite avec ses dépendances réseau. Autofs crée le montage au moment où le chemin est consulté, donc le premier accès peut attendre le réseau ou échouer.

Relancer Autofs et provoquer le montage

Relancez le service pour prendre en compte la carte maître, puis affichez les cartes lues par le démon. automount -m montre leur configuration. Cette commande ne contacte pas forcément l’export NFS et ne prouve pas encore que le montage fonctionne. Le manuel automount décrit ce mode d’affichage.

Sur un serveur qui utilise déjà Autofs, faites cette relance pendant qu’aucun processus n’utilise les chemins concernés.

sudo systemctl restart autofs
sudo automount -m
systemctl --no-pager --full status autofs
sudo journalctl -u autofs -n 50 --no-pager

Le service doit être actif. Une erreur de syntaxe, un fichier de carte absent ou un chemin inaccessible apparaît dans le journal. Corrigez ce point avant de tester le partage.

L’accès suivant déclenche le montage :

ls -la /srv/nfs/projets
findmnt -T /srv/nfs/projets
mountpoint /srv/nfs/projets

Après ls, findmnt doit montrer le serveur NFS et mountpoint doit retourner un statut de réussite. Attendez plus de deux minutes sans ouvrir le répertoire, puis relancez findmnt -T /srv/nfs/projets. Selon le système, la carte Autofs reste visible sous /srv/nfs, tandis que le montage NFS de projets disparaît jusqu’au prochain accès.

Garder Autofs hors des chemins critiques

Autofs convient à un répertoire de projets, une archive ou un partage consulté par un administrateur. Un service qui démarre avant le réseau, un processus qui ne tolère aucun délai ou un chemin utilisé pour écrire des données métier demande un montage permanent et des dépendances systemd explicites.

Le guide NFS sous Linux couvre le montage réseau maintenu dans le temps. Ici, l’objectif est différent : éviter qu’un partage rarement utilisé pèse sur le démarrage, tout en gardant une commande et un journal pour prouver pourquoi le montage apparaît ou disparaît.