Lanzar automagicamente script al detectar evento usb

2010-10-20 Por tema jmramirez
-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=namessuite=stablesection=all

Un saludo y gracias por adelantado
- -- 
Si los tontos volaran, el cielo se oscurecería

No me envié correos en formatos propietarios
http://www.gnu.org/philosophy/no-word-attachments.es.html
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJMvr6XAAoJEOWNzQnqy+fz0JAH/1InkLqhBU13BzQSukr713Qy
pikVyXRGDAQMOyxPB8LGigfzDVNNQv2ZEyfuAfLs9ccsHCY77bThqWSQ+C5lXfxX
45u/E7yBM87+crb5dVF+ffDpf7OIiq8rirmzeFAD+7YGjzdGggJ8aA93H8c+aS5G
ddfFhXzCQ1e6wTFTTBaafUWAHRCwTHQTKl/Eaega8ecaj8bH9poaJtNLZccyqAId
4Fkd6H9dJNivvmKSaDzYPYswc6Zf0/sHx416H3iv0FX487SP88/GTaLdw6cVyMk8
p+6Tyz3iYsUHEHFy5z6Tlk5kmbEiugfI0bBLVn/zxCONIiWJE6eJOBZXidqjDe4=
=gKrd
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/blu0-smtp1635b28bbb688b70f858c3fb1...@phx.gbl



Re: Lanzar automagicamente script al detectar evento usb

2010-10-20 Por tema Marc Aymerich
2010/10/20 jmramirez mas_ke...@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=namessuite=stablesection=all



http://www.gradstein.info/hardware/how-to-automatically-run-a-script-after-inserting-a-usb-device-on-ubuntu/

-- 
Marc


Re: Lanzar automagicamente script al detectar evento usb

2010-10-20 Por tema jmramirez
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 2010/10/20 jmramirez mas_ke...@hotmail.com mailto:mas_ke...@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=namessuite=stablesection=all
 
 http://packages.debian.org/search?keywords=usbmgr+searchon=namessuite=stablesection=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/pci:00/: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==add, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==:00:1d.7,
 RUN+=/home/jmramirez/Desktop/automagicoIFUSE.sh

ACTION==remove, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==: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

Si alguien ve que estoy haciendo mal, esta invitado a un
refresco/birra/copa en Madrid ( tres cantos) XD.

OJO esta en la cache de google

[1]
http://webcache.googleusercontent.com/search?q=cache:QA133qwyl9IJ:www.vicente-navarro.com/blog/2007/03/29/creacion-de-reglas-udev-para-personalizar-el-nombre-de-los-ficheros-de-dispositivo-de-las-memorias-usb/+http://www.vicente-navarro.com/blog/2007/03/29/creacion-de-reglas-udev-para-personalizar-el-nombre-de-los-ficheros-de-dispositivo-de-las-memorias-usb/cd=1hl=esct=clnkgl=es

Un saludo
- -- 
Si los tontos volaran, el cielo se oscurecería

No me envié correos en formatos propietarios
http://www.gnu.org/philosophy/no-word-attachments.es.html
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJMvtlkAAoJEOWNzQnqy+fzz9YH/17xDGv6wWWotFVjP5j9KjM4
iSCsXHTiMGDq66tTojkZFnOvCvisAkAZTftsqsKlnM2pfzuhZhtj50v8WsEw9Xgw
qkoLDcLsIRJ+m2oK9Ibsvuh8dt4Ce/ijgKPghFK1F/wGdmLlp8CJD6KLdukpSRbx
QKnwEDFgGjX3ZtDPaA6lfhMxMVgHY6V/or3sZj0C+zMI9Q/50aXDHpvsV2L0AhxY
AFIOzspokV2/XNbXlclxA5+L1V7oPk0Zoxvi6dWmuw+79ayVViLW3AfwqLng1Foj
ig2imIqRUp1f4+RlPDuBxCz3di0DpS0347EkaVxsvsQSc3PCdUqenOqHoMV68uI=
=nSeK
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/blu0-smtp20108098ae6990da47e7927b1...@phx.gbl



Re: Lanzar automagicamente script al detectar evento usb

2010-10-20 Por tema mariodebian
El mié, 20-10-2010 a las 13:58 +0200, jmramirez escribió:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
  2010/10/20 jmramirez mas_ke...@hotmail.com mailto:mas_ke...@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=namessuite=stablesection=all
  
  http://packages.debian.org/search?keywords=usbmgr+searchon=namessuite=stablesection=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/pci:00/: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==add, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
 ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==:00:1d.7,
  RUN+=/home/jmramirez/Desktop/automagicoIFUSE.sh
 
 ACTION==remove, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
 ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==: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
 


Si es un evento USB porque usas el SUBSYSTEM=pci ?


Yo lo dejaría en la acción, vendedor y producto:

ACTION==add, ATTR{idVendor}==8086, ATTR{idProduct}==, RUN
+=/home/jmramirez/Desktop/automagicoIFUSE.sh

ACTION==remove, ATTR{idVendor}==8086, ATTR{idProduct}==, RUN
+=/home/jmramirez/Desktop/automagicoIFUSE.sh


(no me se el idProducto, puedes verlo con lsusb)

Luego recargas las reglas con

# udevadm control --reload-rules

En el script podrás leer un montón de variables de entorno para verlas
mete esto al principio

echo -  /tmp/automagicoIFUSE.log
env  /tmp/automagicoIFUSE.log


-- 
Saludos
--
http://mariodebian.com


signature.asc
Description: This is a digitally signed message part


Re: Lanzar automagicamente script al detectar evento usb

2010-10-20 Por tema Marc Aymerich
2010/10/20 jmramirez mas_ke...@hotmail.com

 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

  2010/10/20 jmramirez mas_ke...@hotmail.com mailto:
 mas_ke...@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=namessuite=stablesection=all
  
 http://packages.debian.org/search?keywords=usbmgr+searchon=namessuite=stablesection=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/pci:00/: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==add, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
 ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==:00:1d.7,
  RUN+=/home/jmramirez/Desktop/automagicoIFUSE.sh

 ACTION==remove, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
 ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==: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


Re: Lanzar automagicamente script al detectar evento usb (Solucionado)

2010-10-20 Por tema jmramirez
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Buenas..

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

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

 ACTION==remove, SUBSYSTEM==pci, DRIVERS==ehci_hcd,
 ATTR{vendor}==0x8086, ATTR{device}==0x27cc, KERNEL==: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

 
 
 Si es un evento USB porque usas el SUBSYSTEM=pci ?

Básicamente pork soy un poco tonto XD. El cacharro es el iphone y son 3
dispositivos los que detecta entre ellos uno es el  modem y lo detecta
como pci. Cuando me lo has dicho y lo he revisado, he visto que el que
yo quería era usb.


udevadm info -a all --path=/devices/pci:00/:00:1d.7/usb1/1-3
| grep SUBSYSTEM

SUBSYSTEM==usb
SUBSYSTEMS==usb
SUBSYSTEMS==pci
SUBSYSTEMS==



 
 
 Yo lo dejaría en la acción, vendedor y producto:
 
 ACTION==add, ATTR{idVendor}==8086, ATTR{idProduct}==, RUN
 +=/home/jmramirez/Desktop/automagicoIFUSE.sh
 
 ACTION==remove, ATTR{idVendor}==8086, ATTR{idProduct}==, RUN
 +=/home/jmramirez/Desktop/automagicoIFUSE.sh
 
 
 (no me se el idProducto, puedes verlo con lsusb)
 
 Luego recargas las reglas con
 
 # udevadm control --reload-rules

Eso es lo que hice, esta claro que lo estaba haciendo mal. De todas
formas, hasta que no lo puse en debug como me dijo el amigo Marc. No me
di cuenta que ya había una regla antes, que hacia otras funciones. Por
lo que he retocado esa regla y eliminado la mía.

 
 En el script podrás leer un montón de variables de entorno para verlas
 mete esto al principio
 
 echo -  /tmp/automagicoIFUSE.log
 env  /tmp/automagicoIFUSE.log

Aqui me has despistado un poco XD. A ver si no me equivoco, con esa
linea solo he metido las variables de entorno del usuario en un archivo
de log. Si es eso, gracias. Las conocía, pero no esta de mas.

 
 

En fins avisar para esas cañas que os debo ( Marc y mariodebian ) XD

 Como quedo, por si le interesa a alguien 

# Dentro de la regla que encontré con el udevd --debug he agregado
estas lineas

ACTION==add, SUBSYSTEM==usb, OWNER=usbmux, ATTR{idVendor}==05ac,
ATTR{idProduct}==129[0-9a], ENV{USBMUX_SUPPORTED}=1,
ATTR{bConfigurationValue}!=$attr{bNumConfigurations},
ATTR{bConfigurationValue}=$attr{bNumConfigurations}, RUN+=su -m
jmramirez -c 'ifuse /home/jmramirez/ipod'

ACTION==remove, SUBSYSTEM==usb, ENV{PRODUCT}==5ac/129[0-9a]/*,
ENV{INTERFACE}==255/*, RUN+=fusermount -u /home/jmramirez/ipod

###

Copie la linea de arriba que estaba bien hecha ( funcionaba) por eso en
OWNER esta usbmux y luego hago el su -m ... Se podra mejorar, pero ya
estamos esperando el Galaxy S, jejeje

Un saludo y gracias a todos
- -- 
Si los tontos volaran, el cielo se oscurecería

No me envié correos en formatos propietarios
http://www.gnu.org/philosophy/no-word-attachments.es.html
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJMvvbOAAoJEOWNzQnqy+fzNfAH/3MnKW1JMbWItWpM3C3/X0aG
KD8rpgCCFEjDNr9M4slDaJ8UQW0eRucPao0wE8l4xERYiNvW6jSsvDEAV0rey3cj
Pqn7jZC4qkuTr1NFTn0hE58UQlLJzTv2pckPqLw3Vlk6IU2vLVaT1u8cojGMDho5
TbT4nofGSRLDy2Lnhnn0pjMs9+vT9jSQtD9VtA2zH/3yJHVFHJs07RgqrUpjFvRe
g+o3Hbzzy1JBYx4hajuhF9d05MEdemRwnF4mhHgwZ+Bm1w6hRTN3Vbo+yEOuAiQN
X9P0LaEjR5gV+jclDCfVazIRX7lq+aGaWJxvttLUtMvGU1VfE3BDjSbwbeO1j0M=
=zY8t
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/blu0-smtp28db6523a88c2a732d5dacb1...@phx.gbl