- Introduction
- 1.1. Note rapide sur les termes
- Installation
- Configuration
- 3.1. Le fichier de configuration maître
- 3.1.1. Cartes directes et indirectes
- 3.2. Fichiers de carte
- EXEMPLE : Montage automatique d’un partage NFS
- 4.1. Modifier /etc/auto.master
- 4.2. Créer /etc/auto.nfs
- 4.2.1. NFSv4
- 4.3. Démonter les montages statiques et éditer /etc/fstab
- 4.4. Rechargez /etc/init.d/autofs
- 4.5. Assurez-vous que cela fonctionne
- Informations avancées
- 5.1. Note sur /net et /smb
- 5.2. Caractères génériques
- Montage d’autres types de systèmes de fichiers
- 6.1. CIFS
- 6.2. Systèmes de fichiers basés sur FUSE
- 6.2.1. Système de fichiers SSHFS
- Débogage des problèmes de montage automatique
- See Also
Introduction
autofs est un programme pour monter automatiquement des répertoires en fonction des besoins. Les montages automatiques ne sont montés qu’au fur et à mesure de leur accès, et sont démontés après une période d’inactivité. De ce fait, le montage automatique des partages NFS/Samba conserve la bande passante et offre de meilleures performances globales par rapport aux montages statiques via fstab.
1.1. Note rapide sur les termes
Pour éviter toute confusion, les terminologies suivantes seront utilisées :
-
automount est le programme utilisé pour configurer un point de montage pour autofs. Quand autofs est lancé, un démon automount est spawné pour chaque carte.
- Auto-mount ou auto-mounting fait référence au processus de montage automatique des systèmes de fichiers.
-
autofs est le programme qui contrôle le fonctionnement des démons de montage automatique.
Installation
Installer le paquetage autofs soit en cliquant ici, soit en entrant ce qui suit dans une fenêtre de terminal :
-
$ sudo apt-get install autofs
Configuration
autofs peut être configuré en éditant des fichiers de configuration. Il existe d’autres façons de configurer autofs sur un réseau (voir AutofsLDAP), mais les fichiers de configuration fournissent la configuration la plus simple.
3.1. Le fichier de configuration maître
Le fichier de configuration maître pour autofs est /etc/auto.master par défaut. A moins que vous n’ayez une bonne raison de le changer, laissez-le par défaut.
Voici le fichier type fourni par Ubuntu :
## $Id: auto.master,v 1.4 2005/01/04 14:36:54 raven Exp $## Sample auto.master file# This is an automounter map and it has the following format# key location# For details of the format look at autofs(5).#/misc /etc/auto.misc --timeout=60#/smb /etc/auto.smb#/misc /etc/auto.misc#/net /etc/auto.net
-
Par défaut, toutes les lignes sont commentées en utilisant le caractère #.
Chacune des lignes de auto.master décrit un montage et l’emplacement de sa carte. Ces lignes ont le format suivant :
-
mount-point :] map
3.1.1. Cartes directes et indirectes
Les cartes de montages peuvent être directes ou indirectes. Les mappages indirects, tels que ceux du fichier auto.master présenté ci-dessus, créent des points de montage en tant que sous-répertoires à l’intérieur du point de montage principal. Par exemple, considérez l’entrée de mappe principale suivante :
-
/smb /etc/auto.smb
Cette entrée dans auto.master indique à autofs de regarder dans /etc/auto.smb et de créer des points de montage dans le répertoire /smb.
Les cartes directes créent un point de montage au chemin spécifié dans le fichier de carte pertinent. L’entrée du point de montage dans auto.master est toujours /-. Par exemple, la ligne suivante demande à autofs de créer un point de montage à l’endroit spécifié dans auto.data :
-
/- /etc/auto.data
- Si le fichier de carte n’est pas spécifié en utilisant un chemin local ou réseau complet, la configuration du commutateur de service de nom sera utilisée pour localiser la carte, par exemple :
/- auto.data
3.2. Fichiers de carte
Comme indiqué ci-dessus, chaque montage autofs possède son propre fichier de carte. Ces fichiers sont généralement nommés en utilisant la convention auto.<X>, où <X> peut être n’importe quoi tant qu’il correspond à une entrée dans auto.master et est valide pour un nom de fichier.
Les fichiers cartographiques prennent le format suivant :
-
key location
EXEMPLE : Montage automatique d’un partage NFS
Dans ce howto, nous allons configurer autofs pour monter automatiquement un partage NFS, en utilisant un ensemble de fichiers de configuration. Ce howto suppose que vous êtes déjà familier avec les exportations NFS, et que vous avez déjà un partage NFS fonctionnant correctement sur votre réseau. Allez à la page de configuration NFS pour apprendre comment configurer un tel serveur.
4.1. Modifier /etc/auto.master
L’étape suivante crée un point de montage à /nfs et le configure selon les paramètres spécifiés dans /etc/auto.nfs (que nous créerons à l’étape suivante).
- Tapez ce qui suit dans un terminal :
$ sudo nano /etc/auto.master
-
Ajouter la ligne suivante à la fin de /etc/auto.master :
/nfs /etc/auto.nfs
4.2. Créer /etc/auto.nfs
Maintenant nous allons créer le fichier qui contient notre carte de compteurs automatiques :
-
$ sudo nano /etc/auto.nfs
Ce fichier doit contenir une ligne séparée pour chaque partage NFS. Le format d’une ligne est {point de montage} {emplacement}. Si vous avez précédemment configuré des montages statiques dans /etc/fstab, il peut être utile de s’y référer. Rappelez-vous, les points de montage spécifiés ici seront relatifs au point de montage donné dans /etc/auto.master.
La ligne suivante concerne les partages utilisant des versions plus anciennes de NFS (antérieures à la version 4) :
-
server server:/
Cela crée un nouveau point de montage à /nfs/server/ et monte le répertoire racine NFS exporté par la machine dont le nom d’hôte est server.
4.2.1. NFSv4
Si vos partages NFS utilisent NFSv4, vous devez en informer autofs. Dans ce cas, la ligne ci-dessus apparaîtrait comme suit :
-
server -fstype=nfs4 server:/
Le client a besoin des mêmes modifications à /etc/default/nfs-common pour se connecter à un serveur NFSv4.
-
Dans /etc/default/nfs-common nous définissons :
NEED_IDMAPD=yesNEED_GSSD=no # no is default
4.3. Démonter les montages statiques et éditer /etc/fstab
Si vous avez précédemment configuré les partages NFS comme des montages statiques, c’est le moment de les démonter.
-
$ sudo umount /server
Puis, supprimez (ou commentez) leurs entrées respectives dans /etc/fstab.
-
#server:/ /server/ nfs defaults 0 0
4.4. Rechargez /etc/init.d/autofs
Après avoir entré vos modifications, exécutez la commande suivante pour recharger autofs :
-
$ sudo service autofs reload
Si vous travaillez sur une ancienne version ubuntu, et que cela ne fonctionne pas, essayez :
-
$ sudo /etc/init.d/autofs reload
Si vous travaillez sous Natty, et que cela ne fonctionne pas, essayez :
-
$ sudo /etc/init.d/autofs restart
4.5. Assurez-vous que cela fonctionne
Afin d’accéder au partage et de vérifier qu’il fonctionne correctement, entrez ce qui suit dans un shell :
-
$ ls /nfs/server
Si vous voyez votre partage NFS listé, félicitations ! Vous avez un montage NFS fonctionnel via autofs ! Si vous voulez apprendre des informations plus avancées, continuez à lire.
Informations avancées
Suivant l’exemple de structure de répertoire ci-dessus, si vous deviez entrer ls /nfs dans un shell, vous pourriez être surpris de ne rien voir listé. Mais rappelez-vous que vous devez accéder à un répertoire avant qu’il ne soit monté automatiquement. Pour accéder au partage, entrez ls /nfs/server. Une fois qu’il a été accédé, votre partage ne sera listé que jusqu’à ce qu’il s’éteigne. Il est bon de garder cela à l’esprit, car cela pourrait vous faire gagner du temps en diagnostiquant un problème autofs qui n’existe pas vraiment.
5.1. Note sur /net et /smb
Ces deux configurations par défaut peuvent être utiles pour votre configuration. Si vous avez beaucoup de partages NFS ou Samba, vous pouvez vouloir décommenter ces lignes. /net permet le montage automatique de systèmes de fichiers ailleurs sur le réseau qui sont exportés par NFS. Par exemple, si vous avez un serveur nommé fileserver avec un répertoire d’exportation NFS appelé /export, vous pouvez le monter en tapant dans une ligne de commande shell cd /net/fileserver/export. Dans un environnement avec des serveurs de fichiers NFS, une telle configuration peut être utile. /smb fonctionne de la même manière mais est destiné aux systèmes de fichiers Samba. Cependant, si vous devez vous authentifier avant d’accéder au partage Samba, automount ne fonctionnera pas.
5.2. Caractères génériques
Disons que vous avez un répertoire avec un certain nombre de sous-répertoires que vous voulez faire monter automatiquement individuellement. Un exemple de ceci est le répertoire /home, dans ce cas /etc/auto.master pourrait contenir la ligne suivante :
-
/home /etc/auto.home
Si l’utilisateur1 est connecté, vous voudrez monter automatiquement son répertoire personnel. Cependant, si vous créez un point de montage pour l’ensemble du répertoire /home, vous monterez également les répertoires home de tous les autres utilisateurs en même temps, gaspillant ainsi de la bande passante. Une solution à ce problème serait de créer des entrées séparées pour chaque répertoire, comme suit :
-
# /etc/auto.homeuser1 server:/home/user1user2 server:/home/user2user3 server:/home/user3
Cela fonctionne, mais est encombrant. À la place, vous pouvez utiliser des caractères de remplacement, comme suit :
-
* server:/home/&
L’astérisque (*) est utilisé à la place du point de montage et l’esperluette (&) à la place du répertoire à monter. Pour plus de détails sur l’utilisation des caractères génériques, voir Utilisation des caractères génériques comme raccourcis dans les cartes AutoFS.
Vous pouvez également utiliser des variables (voir la page de manuel autofs(5)) pour substituer les utilisateurs et d’autres paramètres afin de pouvoir créer un fichier générique pour plusieurs utilisateurs. L’exemple ci-dessous est smb map qui mappe basé sur l’utilisateur qui demande le partage en utilisant la variable $USER.
* -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users,file_mode=0700,dir_mode=0700 ://server/$USERshare1 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share1share2 -fstype=cifs,rw,credentials=/home/$USER/.smbcredentials,iocharset=utf8,uid=$USER,gid=users ://server/share2
Montage d’autres types de systèmes de fichiers
6.1. CIFS
Lorsque vous spécifiez un partage CIFS dans un fichier map, spécifiez -fstype=cifs et faites précéder l’emplacement du partage par deux points ( :).
Exemple :
mntpoint -fstype=cifs ://example.com/shrname
Exemple : Monter en lecture-écriture, en spécifiant un utilisateur et un groupe pour posséder les fichiers :
mntpoint -fstype=cifs,rw,uid=myuserid,gid=mygrpid ://example.com/shrname
Exemple : Monter en lecture-écriture, en spécifiant un nom d’utilisateur et un mot de passe à utiliser pour se connecter au partage :
mntpoint -fstype=cifs,rw,username=myuser,password=mypass ://example.com/shrname
6.2. Systèmes de fichiers basés sur FUSE
Les systèmes de fichiers basés sur FUSE sont montés en spécifiant -fstype=fuse. L’emplacement du système de fichiers spécifie le binaire de l’espace utilisateur utilisé pour monter le système de fichiers, suivi d’un dièse (#), suivi de l’emplacement.
Lorsqu’on spécifie un emplacement de système de fichiers FUSE dans le fichier map, certains caractères, notamment le hachage (#) et les deux points ( :), doivent être échappés par une barre oblique inverse (\). L’emplacement entier doit être précédé de deux points ( :).
Comme automount effectue le montage en tant que root, il est généralement nécessaire de spécifier allow_other sur les options de montage pour permettre à votre userid non-root d’accéder au partage.
6.2.1. Système de fichiers SSHFS
SSHFS est un système de fichiers basé sur FUSE. Dans un montage autofs, les deux points ( 🙂 suivant le nom du serveur doivent être échappés par une barre oblique inverse (\).
Vous devriez déjà avoir configuré l’authentification sans mot de passe via le cryptage à clé publique. Assurez-vous que vous comprenez les implications de sécurité de ceci avant de continuer.
N’oubliez pas que automount montera votre système de fichiers SSHFS en tant que root, vous devez donc :
-
Copier votre clé privée dans le répertoire /root/.ssh. Assurez-vous que vous comprenez les implications de sécurité de ceci avant de procéder.
-
Ajoutez les clés d’hôtes nécessaires à /root/.ssh/known_hosts.
- Spécifier le nom d’utilisateur utilisé pour se connecter
Pour tester le montage de votre système de fichiers SSHFS en tant que root a émis ce qui suit :
sudo sshfs [email protected]:/ mountpoint
Si le montage réussit sans vous demander un mot de passe, vous êtes prêt à monter le système de fichiers via autofs
Exemple :
mntpoint -fstype=fuse,allow_other :sshfs\#[email protected]\:/path/to/mount
Exemple : Monter en lecture-écriture, en spécifiant un utilisateur et un groupe pour posséder les fichiers :
mntpoint -fstype=fuse,rw,uid=1000,gid=1000,allow_other :sshfs\#[email protected]\:/path/to/mount
Notez que pour les montages FUSE, uid et gid doivent être des ids numériques.
Débogage des problèmes de montage automatique
Si vous avez des problèmes pour monter automatiquement vos systèmes de fichiers, il peut être utile d’exécuter automount au premier plan.
-
Arrêter le démon autofs
sudo service autofs stop
-
Exécuter automount au premier plan avec des informations verbeuses
sudo automount -f -v
- Depuis un autre terminal, essayez de monter vos systèmes de fichiers en changeant les répertoires dans le point de montage.
- Vérifiez la sortie du premier terminal pour trouver des indices sur la raison pour laquelle le montage a échoué ou n’a pas été tenté.
See Also
-
Mount – Informations sur le processus de montage et sa configuration dans Ubuntu.
-
La page de manuel mount – hébergée sur le site officiel d’Ubuntu.