Montage automatique de partages NFS

modifié le : 13 septembre 2022,
par Guillaume Chéramy
 

Dans certains cas de figure il peut arriver d'avoir besoins de monter différents partages NFS d'un serveur à un autre. On va donc se retrouver sur le serveur client NFS avec un fichier fstab volumineux, ce qui peut ralentir voir poser des problèmes en cas de redémarrage du serveur. De plus certaines montages ne sont peut être pas nécessaires tout le temps et donc utilisent le réseau pour rien.

Une solution est de déporter les montages avec un outils comme autofs. Ce qui présente plusieurs avantages :

  • on allège les montages au démarrage, donc le serveur démarre plus vite
  • les montages se font que quand c'est nécessaire et se démontent au bout d'un laps de temps défini

Prenons le cas d'un serveur nfs avec les exports suivants :

# exportfs -v
/data/rep1        192.168.1.0/255.255.255.0(rw,wdelay,no_root_squash)
/data/rep2        192.168.1.0/255.255.255.0(rw,wdelay,no_root_squash)

 

Paramétrage serveur client

On commence par installer autofs :

# apt-get install autofs

 

Le fichier /etc/default/autofs permet de définir les paramètres par défaut pour tout les montages. Le paramètre important est la valeur de timeout par défaut :

# Timeout value in seconds (default: 300)
TIMEOUT=300

 

On va ensuite créer la table maîtresse d'automontage avec le fichier /etc/auto.master, dans celle-ci on pourra surcharger les valeurs par défaut :

/data   /etc/auto.nfs --timeout=60

On défini le point de montage parent local, ie le répertoire dans lequel se feront les montages.

 

Il faut maintenant définir la table secondaire d'automontage pour les montages nfs dans le fichier /etc/auto.nfs :

rep1            -fstype=nfs,rw,soft,intr,sec=sys 192.168.1.6:/data/rep1
rep2            -fstype=nfs,soft,intr,rsize=8192,wsize=8192,nosuid 192.168.1.6:/data/rep2

rep1 et rep2 représentent les répertoires locaux des montages.

On définit ensuite les paramétrages nfs et les sources nfs.

On redémarre autofs et on test.

 

Test

# tree /data
/data

Le répertoire est vide aucun montage en cours.

# ls -la /data/rep1
total 8
drwxrwx--- 3 root root 4096 déc 14 09:31 .
drwxr-xr-x 3 root root    0 déc 14 11:58 ..
drwxrwx--- 2 root root 4096 déc 14 09:31 cours
mk-autofs-clt:~# tree /data
/data
`-- rep1
    `-- cours
        `-- administration_ldap.pdf
2 directories, 1 file

On commence par faire un ls sur le répertoire rep1 qui se monte alors automatiquement.

Au bout de 60 secondes si aucune application n'a accédée au répertoire rep1 celui-ci est démonté.

 

Statut d'autofs

Pour obtenir des infos sur les paramétrages en cours d'autofs :

# /etc/init.d/autofs status
Configured Mount Points:
------------------------
/usr/sbin/automount --timeout=60 /data file /etc/auto.nfs

Active Mount Points:
--------------------
/usr/sbin/automount --pid-file=/var/run/autofs/_data.pid --timeout=60 /data file /etc/auto.nfs