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.
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.
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.