Différences entre versions de « HotPlug »
Sauter à la navigation
Sauter à la recherche
imported>SylvainBeucler m (ajout exemple d'environnement dans le script; noter l'utilisation en dur de /dev/sda1) |
imported>SylvainBeucler m (quelques clarifications) |
||
Ligne 1 : | Ligne 1 : | ||
− | + | Au démarrage, se lance après! | |
+ | * le montage des systèmes de fichiers | ||
+ | * après le support USB | ||
− | + | Au lancement, il y a ''coldplug'', c'est à dire des événements hotplug comme on branchait tous les périphériques à ce moment-là. | |
− | + | Fournit par le paquet Debian 'hotplug', ou bien 'udev' (quelle différence?) (udev requiert noyau Linux 2.6). | |
− | + | Fichiers: cf. man 8 hotplug | |
− | + | ---- | |
Que veut dire ceci? | Que veut dire ceci? |
Version du 27 janvier 2006 à 16:40
Au démarrage, se lance après!
- le montage des systèmes de fichiers
- après le support USB
Au lancement, il y a coldplug, c'est à dire des événements hotplug comme on branchait tous les périphériques à ce moment-là.
Fournit par le paquet Debian 'hotplug', ou bien 'udev' (quelle différence?) (udev requiert noyau Linux 2.6).
Fichiers: cf. man 8 hotplug
Que veut dire ceci?
/etc/hotplug/NAME/DRIVER driver setup scripts, invoked by agents
Réponse: par exemple:
/etc/hotplug/usb/usb-storage
sera appelé si le périphérique qu'on vient de brancher utilise le module noyau 'usb_storage'
Code périphérique "mass storage device": 8/6/80
Exemple de fichier de hook: http://forums.gentoo.org/viewtopic-t-113911.html
#!/bin/bash #create a script to undo our actions upon removal if [ "$INTERFACE" = "8/6/80" ]; then if [ "$PRODUCT" = "5e3/702/33" -o "$PRODUCT" = "05e3/0702/0033" ]; then mount /backup cat <<'EOF' > $REMOVER #!/bin/bash umount -f /backup EOF chmod a+x $REMOVER fi fi #!/bin/bash #DEBUG #echo "=======" #( # echo $0 $* # env #)> /tmp/hot.txt #echo "======="
On note qu'on doit faire directement référence, dans /etc/fstab, à un nom de périphérique (ici /dev/sda1). Ce serait mieux que hotplug nous dise lequel.
Exemple de sortie DEBUG ci-dessus:
SUBSYSTEM=usb DEVPATH=/devices/pci0000:00/0000:00:10.2/usb3/3-2/3-2:1.0 REMOVER=/var/run/usb/%proc%bus%usb%003%002 PATH=/bin:/sbin:/usr/sbin:/usr/bin ACTION=add MODALIAS=usb:v05E3p0702d0033dc00dsc00dp00ic08isc06ip50 PWD=/etc/hotplug UDEV_LOG=1 MANAGED_EVENT=1 UDEVD_EVENT=1 SHLVL=2 HOME=/ DEVICE=/proc/bus/usb/003/002 INTERFACE=8/6/80 PRODUCT=5e3/702/33 TYPE=usb PHYSDEVBUS=usb SEQNUM=379 _=/usr/bin/env