[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Lanzar automagicamente script al detectar evento usb



2010/10/20 jmramirez <mas_ke_na@hotmail.com>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> 2010/10/20 jmramirez <mas_ke_na@hotmail.com <mailto:mas_ke_na@hotmail.com>>
>
>     -----BEGIN PGP SIGNED MESSAGE-----
>     Hash: SHA1
>
>     Buenos días a tos ....
>
>            Estoy buscando la manera de poder lanzar automagicamente un
>     script
>     cuando se conecte un dispositivo usb. Pero no doy con la solución.
>
>            He visto por la red diferentes opciones y esta [1] (usbmgr)
>     creo que es
>     la que mejor "me viene". Pero estoy bastante perdido y me gustaría si
>     alguien conoce algun link donde tenga mas informacion ( a ser posible en
>     castellano) para ver si me "empapo" un poco.
>
>            Uso Squeeze y el paquete no le veo, busque en [2] ( en toda las
>     versiones) pero no existe, lo cual ya me ha roto del todo. Creo ( pero
>     no lo se) que todo esto ahora lo maneja udev. Pero no se como hacer lo
>     que quiero con udevadm u otro comando.
>
>     PD: No me quisiera poner una tarea de cron cada 5 min para que ejecute
>     el script.
>
>     [1]
>     http://www.mail-archive.com/debian-user-spanish@lists.debian.org/msg71572.html
>
>     [2]
>     http://packages.debian.org/search?keywords=usbmgr+&searchon=names&suite=stable&section=all
>     <http://packages.debian.org/search?keywords=usbmgr+&searchon=names&suite=stable&section=all>
>
>
>
> http://www.gradstein.info/hardware/how-to-automatically-run-a-script-after-inserting-a-usb-device-on-ubuntu/
Buenas....

       Lo primero gracias por la velocidad y la respuesta, aunque es para
ubuntu y no es exactamente igual. Pero me ha servido para tirar del hilo.

       El comando en Squeeze es "udevadm info" y después de saber cual es el
path hice este comando:

udevadm info -a all --path=/devices/pci0000:00/0000:00:1d.7/usb1/1-3

       Encontré este link [1] que viene bien explicado ( eso me pareció a mi y
ademas en castellano), el como crearte las reglas para udev.

       Pero no consigo ver en los logs, que esta fallando, se que no se
ejecuta el script. Así es como lo tengo:


cat /etc/udev/rules.d/jmramirez.rules

ACTION="" SUBSYSTEM=="pci", DRIVERS=="ehci_hcd",
ATTR{vendor}=="0x8086", ATTR{device}=="0x27cc", KERNEL=="0000:00:1d.7",
 RUN+="/home/jmramirez/Desktop/automagicoIFUSE.sh"

ACTION="" SUBSYSTEM=="pci", DRIVERS=="ehci_hcd",
ATTR{vendor}=="0x8086", ATTR{device}=="0x27cc", KERNEL=="0000:00:1d.7",
 RUN+="/home/jmramirez/Desktop/automagicoIFUSE.sh"

       Esto es lo que veo en el log:

cat  /var/log/syslog | grep jmramirez.rule

Oct 20 12:43:13 jmramirezmachine udevd[31863]: BUS= will be removed in a
future udev version, please use SUBSYSTEM= to match the event device, or
SUBSYSTEMS= to match a parent device, in /etc/udev/rules.d/jmramirez.rules:1

Para debugar con udev puedes usar estos comandos. 

udevd --debug-trace –verbose
strace -p pid_of_udevd -f -e trace=open,exec
 
--
Marc



--
Marc

Reply to: