Différences entre versions de « HotPlug »
Sauter à la navigation
Sauter à la recherche
imported>SylvainBeucler m (présentation) |
imported>SylvainBeucler m (ajout exemple d'environnement dans le script; noter l'utilisation en dur de /dev/sda1) |
||
Ligne 44 : | Ligne 44 : | ||
#echo "=======" | #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 | ||
+ | |||
== Voir aussi == | == Voir aussi == |
Version du 19 janvier 2006 à 20:01
Se lance après le montage des systèmes de fixer
Se lance après le support USB
Au lancement, 'coldplug', c'est à dire hotplug comme si les périphériques étaient branchés à ce moment-là.
Fournit par le paquet Debian 'hotplug', ou bien 'udev'.
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