don@sabotage.org
autofs
, le monteur automatique de syst�mes de fichiers, comment le configurer, et met en �vidences quelques probl�mes � �viter.
Un monteur automatique est un processus qui automatise le montage (et le d�montage) de certains syst�mes de fichiers gr�ce � un d�mon. Si le syst�me de fichiers n'est pas mont�, et qu'un utilisateur essaye d'y acc�der, il sera automatiquement (re)mont�. Ceci est tr�s utile, surtout dans les grands r�seaux et pour partager des syst�mes de fichiers entre plusieurs machines, sp�cialement lors qu'elles ne sont pas toujours allum�es. Cela peut aussi �tre tr�s utile pour les disques amovibles, ou quelques autres utilisations, tels le basculement entre un syst�me MS-DOS mont� en mode ASCII forc� activ�, et le m�me syst�me MS-DOS avec le mode ASCII forc� d�sactiv�.
Il y a deux types de monteurs automatiques sous Linux : AMD et autofs. AMD est le d�mon automount, et fonctionne normalement comme l'AMD de SunOS. Il est r�alis� en tant que programme utilisateur, c'est � dire qu'il ne fait pas partie du noyau. Autofs est un syst�me plus r�cent qui est assist� par le noyau, cela signifie que le code du noyau g�rant les syst�mes de fichiers sait que les points de montages sont sur un autre syst�me de fichiers, et c'est l� que le programme automount prend le relais. Seul autofs sera d�crit dans ce Mini-HowTo.
Comme autofs fonctionne dans l'espace noyau, vous devez avoir compil� votre noyau avec le support pour autofs. Dans les 2.0.xx, c'est une option exp�rimentale, mais �a � l'air d'�tre stable. Dans les 2.1.xx (et certainement dans les 2.2.xx) il n'est plus exp�rimental.
Le programme automount et ses fichiers de configuration sont aussi n�cessaires. L'utilisation des rpms (depuis votre miroir pr�f�r�) est une tr�s bonne mani�re pour commencer. Le programme automount devrait �tre d�marr� par l'un des scripts plac� dans le r�pertoire /etc/rc.d/init.d. Le rpm installe tout �a, mais vous aurez � vous assurer qu'il est lanc�, soit en le liant dans vos r�pertoire rc?.d, en utilisant le panneau de contr�le de la Redhat, soit pour une autre distribution en le faisant d�marrer de la mani�re qu'il vous pla�t. Ne regardez pas trop ce que le script rc fait; car si vous lisez ce HowTo, vous ne voulez certainement pas savoir.
L'installation du rpm est tr�s facile, mais voici le morceau que vous risquez de rejouer une ou deux fois si vous ne l'avez jamais tent�.
Il y a deux fichiers dans /etc, un appel� auto.master, et l'autre appel� auto.misc. Mon fichier auto.master ressemble � �a :
/auto /etc/auto.misc --timeout 60
La premi�re entr�e n'est pas le point de montage, c'est en fait l� o� se trouveront les points de montage (que l'on trouve dans la deuxi�me entr�e). La troisi�me option demande aux syst�mes de fichiers d'essayer de se d�monter automatiquement au bout de 60 secondes d'inutilisation. Ils ne peuvent bien s�r pas �tre d�mont�s si ils sont toujours utilis�s.
Auto.misc est une table. Plusieurs fichiers similaires peuvent �tre utilis�s dans auto.master. Mon auto.misc ressemble � ceci :
kernel -ro,soft,intr ftp.kernel.org:/pub/linux cd -fstype=iso9660,ro :/dev/cdrom zip -fstype=auto :/dev/hdd4 floppy -fstype=vfat :/dev/fd0
La premi�re colonne (la "cl�") repr�sente le point de montage. Dans ce cas, ce sera /auto/floppy, /auto/cd, etc. La colonne du milieu repr�sente les options; parcourez la page man de mount pour plus de d�tails. Et la derni�re colonne sp�cifie d'o� provient le syst�me de fichiers. L'entr�e "kernel" est suppos�e �tre un montage NFS. Le symbole ":" sur les autres lignes signifient que c'est un disque local.
J'ai bien vu que certains d'entre vous regardaient ce timeout de 60 secondes de travers et pensaient "C'est long pour attendre avant l'�jection d'une disquette... Je vais juste faire un sync des disques et puis l'�jecter sans qu'elle soit d�mont�e, et personne ne s'en apercevra." Laissez moi vous sugg�rer une meilleure alternative
. Tout d'abord, vous pouvez changer le timeout. Mais cela pourrait �tre peu efficace de dire au syst�me de d�monter tout apr�s 15 secondes d'inactivit�. Il y a bien une mani�re de demander � automount de d�monter. Si vous envoyez (avec kill) le signal SIGUSR1
au processus automount, il d�montera tout ce qu'il peut. Mais avant que vous commenciez tous � faire un chtit bouton "D�monter" dans votre gestionnaire de fen�tres, il y a un petit probl�me.
Le processus automount est lanc� par root, et il n'acceptera que les signaux venant de root. Pour une bonne part, vous voulez utiliser le montage automatique pour �viter d'avoir � monter et d�monter les partitions en �tant root. Il serait bien sur facile de faire un petit programme C suid-root qui ferait le sale boulot, ce qui le meilleur moyen de r�gler le probl�me si les utilisateurs ne vous inspirent pas confiance.
Si les utilisateurs sont s�rieux, un compromis serait d'utiliser sudo, en l'installant avec la ligne suivante :
ALL ALL=NOPASSWD:/bin/kill -SIGUSR1 [0-9]*
Vous avez autoris� tout le monde sur le syst�me � envoyer un signal SIGUSR1 � n'importe quel processus. Ceci pourra avoir plusieurs effets sur diff�rents programmes; il recyclera afterstep, mais tuera xemacs. Par cons�quent, si vous n'avez pas enti�rement confiance en vos utilisateurs, vous pouvez leur restreindre l'acc�s au seul daemon automount (gr�ce � pidof par exemple) la ligne suivante pourra donc d�monter les trucs. Cela serait r�alis� gr�ce � :
/usr/bin/sudo /bin/kill -SIGUSR1 `/sbin/pidof automount`
/auto/floppy
, ou n'importe quel point de montage que je cherche.
Si vous avez configur� automount correctement, les points de montage que vous cherchez appara�tront lorsque vous essayerez de les utiliser. Si vous utilisez un utilitaire graphique pour vous d�placer dans les r�pertoire, vous aurez peut �tre besoin de taper le r�pertoire � la main. Malheureusement, le fait de ne pas pouvoir choisir parmi les points de montages invisibles est certainement le pire d�faut d'autofs
. Si cela vous ennuie tant que �a, �ditez les fichiers de configuration (Astuce, ils se terminent par .c pour "configuration").
Gr�ce � la commande df. mount sans arguments fera de m�me, et montrera en plus les options de montage.
Cela n'est pas un probl�me d'automount. A l'heure ou j'�cris ces lignes, le type de syst�me de fichier "auto" ne tente pas de monter une partition vfat si il a r�ussi � monter une partition MS-DOS. VFAT est le syst�me de fichiers avec noms longs utilis� par Win95/WinNT et est incrust� dans une FAT MS-DOS. Ceci signifie que vous ne pouvez monter du vfat que si vous laissez tomber tous les autres types de syst�mes de fichiers. Heureusement, cela sera bient�t r�par�. D'ici l�, vous pouvez toujours cr�er plusieurs points de montage.
/trucchose
est mont� et kill -SIGUSR1
ne le d�monte pas.
Il est utilis� par autre chose. Root ne peut probablement pas le remonter non plus. Si vous �tes celui qui l'a mont� (il n'y a personne d'autre qui l'utilise) v�rifiez qu'aucun shell qui pourrait �tre dans ce r�pertoire. Si il n'y en a pas, cherchez encore (particuli�rement quelque chose qui pourrais �tre pass� par l� comme un gestionnaire de fichiers) qui pourrais avoir laiss� un pied invisible sur le pas de la porte...
Pas moi. Je n'y suis pour rien. J'ai juste voulu attirer l'attention de tout le monde sur l'excellent travail qui a �t� fait sur autofs
, et sa facilit� d'utilisation. Compar� � l'AMD d'origine (Astuce, ils vendent une version hors de prix d'UNIX avec des outils gratuits pr�historiques) l'autofs est tr�s bien document� et les auteurs ont tous mes remerciements.