18.3. Agents hotplug

Un agent hotplug est un programme exécutable qui accomplit les actions appropriées pour un événement. Pour les événements de périphériques, les agents se trouvent dans /etc/hotplug.d/nom événement et /etc/hotplug.d/default. Dans ces répertoires, tous les programmes qui ont le suffixe .hotplug sont exécutés par ordre alphabétique.

Pour s'assurer que les événement d'un genre particulier sont ignorés, supprimez les bits exécutables des agents hotplug respectifs. Vous pouvez aussi changer le suffixe .hotplug en quelque chose d'autre.

Les agents de périphériques chargent en majorité des modules de noyau, mais doivent occasionnellement appeler aussi des commandes supplémentaires. Sous SUSE LINUX, ceci est pris en charge par /sbin/hwup ou /sbin/hwdown. Ces programmes recherchent dans le répertoire /etc/sysconfig/hardware une configuration adaptée au périphérique et l'utilisent. Si un périphérique donné ne doit pas être initialisé, un fichier de configuration correspondant doit être mis en place avec le mode de démarrage manual ou off. Si /sbin/hwup ne trouve aucune configuration, les modules sont automatiquement chargés par l'agent. Dans ce cas, certains agents génèrent automatiquement des fichiers de configuration pour hwup. Cela rendra l'agent plus rapide la prochaine fois. Pour plus d'informations sur ce sujet, voir Section 18.4, « Chargement automatique de modules ». Vous trouverez des informations sur /sbin/hwup dans le fichier /usr/share/doc/packages/sysconfig/README et dans la page de manuel man hwup.

Avant que les agents d'interfaces soient appelés, udev construit d'abord un nœud de périphérique (en anglais device node) auquel le système a accès. udev permet de donner des noms persistants aux interfaces. Voir Chapitre 19, Nœuds de périphériques dynamiques avec udev pour plus de détails. Enfin, les agents individuels installent les interfaces. Les opérations correspondant à quelques interfaces sont décrites dans ce qui suit.

18.3.1. Activation des interfaces réseau

Les interfaces réseau sont initialisées avec /sbin/ifup et désactivées avec /sbin/ifdown. Vous trouverez des détails à ce sujet dans le fichier /usr/share/doc/packages/sysconfig/README et dans la page de manuel man ifup.

Si un ordinateur dispose de plusieurs périphériques réseau avec différents pilotes, il se peut que les désignations d'interfaces soient modifiées si un autre pilote a été chargé plus rapidement lors de l'amorçage. C'est pour cela que dans SUSE LINUX les événements des périphériques réseau PCI sont administrés par une file d'attente. Vous pouvez désactiver ce comportement dans le fichier /etc/sysconfig/hotplug par l'intermédiaire de la variable HOTPLUG_PCI_QUEUE_NIC_EVENTS=no.

Cependant, la meilleure solution est d'utiliser des désignations d'interfaces cohérentes. Vous pouvez spécifier le nom souhaité dans les fichiers de configuration de chaque interface. Vous trouverez des détails sur cette méthode dans le fichier /usr/share/doc/packages/sysconfig/README. Depuis SUSE LINUX 9.3, udev se charge aussi des interfaces réseau bien qu'ils ne s'agissent pas de nœuds de périphérique. Ceci permet l'utilisation de noms d'interface persistants de façon plus standardisée.

18.3.2. Activation des périphériques de stockage

Les interfaces des périphériques de stockage doivent être montées pour pouvoir y accéder. Cela peut soit se faire de façon totalement automatique, soit être configuré à l'avance. La configuration s'effectue dans le fichier /etc/sysconfig/hotplug au moyen des variables HOTPLUG_DO_MOUNT, HOTPLUG_MOUNT_TYPE et HOTPLUG_MOUNT_SYNC et dans le fichier /etc/fstab. Le fonctionnement complètement automatisé est activé en fixant la variable HOTPLUG_DO_MOUNT=yes. Désactivez-le en attribuant la valeur no à la variable.

Utilisez la variable HOTPLUG_MOUNT_TYPE pour basculer entre deux modes : subfs ou fstab. En mode HOTPLUG_MOUNT_TYPE=subfs, un sous-répertoire dont le nom est construit à partir des caractéristiques du périphérique est placé dans le répertoire /media. Le volume y est monté et démonté automatiquement par la commande submountd lorsque l'on accède au support. Les périphériques utilisant ce mode peuvent facilement être retirés lorsque l'on y accède plus. En mode HOTPLUG_MOUNT_TYPE=fstab, les périphériques de stockage sont montés de manière traditionnelle comme il est indiqué dans le fichier /etc/fstab.

La variable HOTPLUG_MOUNT_SYNC permet de choisir si l'accès doit se faire en mode synchrone ou asynchrone. En fonctionnement asynchrone, le temps d'accès en écriture est plus court, car les résultats sont stockés dans un tampon. Il se peut toutefois que les données ne puissent pas être écrites complètement lorsque le support est retiré sans précaution. En fonctionnement synchrone, toutes les données sont écrites immédiatement, mais le temps d'accès est plus long. Il faut démonter le périphérique manuellement avec la commande umount.

L'utilisation de noms persistants pour les périphériques est recommandées car les noms de périphériques traditionnels peuvent changer selon l'ordre d'initialisation. Vous pourrez trouver plus de détails sur les noms persistants pour les périphériques dans Chapitre 19, Nœuds de périphériques dynamiques avec udev.


SUSE LINUX Guide de l'administrateur 9.2