¿Qué puedo hacer para ejecutar automáticamente un script después de montar / enchufar o desmontar / desconectar un dispositivo USB?
¿Qué puedo hacer para ejecutar automáticamente un script después de montar / enchufar o desmontar / desconectar un dispositivo USB?
Respuestas:
Gracias a MinimusHeximus y los respectivos contribuyentes al hilo que mencionó en su comentario a mi pregunta similar, creo que ahora puedo ofrecerle la siguiente respuesta.
Necesitará 5 (cinco) archivos para un dispositivo USB como el siguiente, simplemente completando los valores respectivos <fortheseparts>
:
/etc/udev/rules.d/00-usb-<yourdevice>.rules
ACTION=="add", ATTRS{idVendor}=="<yourvendorid>", ATTRS{idProduct}=="<yourproductid>", ENV{XAUTHORITY}="/home/<user>/.Xauthority", ENV{DISPLAY}=":0", OWNER="<user>", RUN+="/usr/local/bin/usb-<yourdevice>-in_udev"
ACTION=="remove", ATTRS{idVendor}=="<yourvendorid>", ATTRS{idProduct}=="<yourproductid>", ENV{XAUTHORITY}="/home/<user>/.Xauthority", ENV{DISPLAY}=":0", OWNER="<user>", RUN+="/usr/local/bin/usb-<yourdevice>-out_udev"
/usr/local/bin/usb-<yourdevice>-in_udev
#!/bin/bash
/usr/local/bin/usb-<yourdevice>-in &
/usr/local/bin/usb-<yourdevice>-in
#!/bin/bash
sleep 1
<yourbashscriptcode>
/usr/local/bin/usb-<yourdevice>-out_udev
#!/bin/bash
/usr/local/bin/usb-<yourdevice>-out &
/usr/local/bin/usb-<yourdevice>-out
#!/bin/bash
sleep 1
<yourbashscriptcode>
Notas:
<yourvendorid>
e <yourproductid>
ingresando el comando lsusb
en la Terminal, cuando su dispositivo USB está enchufado, que enumerará todos sus dispositivos USB disponibles actualmente, por ejemplo Bus 003 Device 002: ID 8087:07da Intel Corp.
, donde 8087 es el VendorID y 07da es el ProductID .<yourdevice>
puede ser cualquier nombre arbitrario que elija para su dispositivo USB, por ejemplo, elegí usar el nombre genérico " teclado " al crear dichos archivos para mi teclado USB que requería aplicar un diseño de teclado diferente cada vez que estaba enchufado.ACTION=="remove"
línea en el archivo de reglas de udev y, por lo tanto, los 2 (dos) out
archivos asociados " ", cuando no necesita hacer nada (por ejemplo, revertir un cambio realizado cuando el dispositivo está encendido enchufado) después de que el dispositivo esté desconectado.El administrador de archivos SpaceFM lo permite. Consulte Configuración de ejecución automática , por ejemplo Ejecución automática | En montaje o ejecución automática | En desmontar .