Différences entre les pages « Gravure CD-ROM » et « HotPlug »
(→CD Audio : CUE) |
imported>SylvainBeucler m |
||
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? | |
+ | /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 | ||
− | |||
− | |||
− | + | == Other systems == | |
− | == | + | === udev === |
− | + | udev replaces hotplug and provide the same events | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | === HAL === |
− | + | From <tt>/usr/share/doc/udev/FAQ.gz</tt>: | |
− | + | <blockquote> | |
− | + | Q: Can I use udev to automount a USB device when I connect it? | |
− | + | A: Technically, yes, but udev is not intended for this. All major distributions | |
− | + | use HAL (http://freedesktop.org/wiki/Software_2fhal) for this, which also | |
− | + | watches devices with removable media and integrates into the desktop software. | |
− | + | </blockquote> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | == Voir aussi == | |
− | |||
− | + | * http://kernel.org/pub/linux/utils/kernel/hotplug/udev_vs_devfs : le point sur udev | |
− | + | * http://www.reactivated.net/writing_udev_rules.html | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | * | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Version du 30 janvier 2006 à 21:24
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
Other systems
udev
udev replaces hotplug and provide the same events
HAL
From /usr/share/doc/udev/FAQ.gz:
Q: Can I use udev to automount a USB device when I connect it? A: Technically, yes, but udev is not intended for this. All major distributions use HAL (http://freedesktop.org/wiki/Software_2fhal) for this, which also watches devices with removable media and integrates into the desktop software.