Co mogę zrobić, aby automatycznie uruchomić skrypt po zamontowaniu / podłączeniu lub odmontowaniu / odłączeniu urządzenia USB?
Co mogę zrobić, aby automatycznie uruchomić skrypt po zamontowaniu / podłączeniu lub odmontowaniu / odłączeniu urządzenia USB?
Odpowiedzi:
Dzięki MinimusHeximus i odpowiednim współautorom wątku, o którym wspomniał w swoim komentarzu do mojego podobnego pytania, myślę, że mogę teraz zaoferować następującą odpowiedź.
Będziesz potrzebować 5 (pięciu) plików dla takiego urządzenia USB w następujący sposób, po prostu wypełniając odpowiednie wartości <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>
Uwagi:
<yourvendorid>
i <yourproductid>
wprowadzając komendę lsusb
w Terminalu - gdy urządzenie USB jest podłączone - co pokaże wszystkie urządzenia USB aktualnie dostępne, jak Bus 003 Device 002: ID 8087:07da Intel Corp.
, gdzie 8087 jest VendorID i 07da jest ProductID .<yourdevice>
może to być dowolna dowolna nazwa, którą możesz wybrać dla swojego urządzenia USB, na przykład zdecydowałem się używać nazwy ogólnej „ klawiatura ” podczas tworzenia takich plików dla mojej klawiatury USB, która wymagała zastosowania innego układu klawiatury, gdy jest ona podłączona.ACTION=="remove"
wiersza w pliku reguł udev, a tym samym powiązanych out
plików 2 („)” , gdy nie trzeba nic robić (np. Cofnąć zmianę dokonaną, gdy urządzenie jest podłączony) po odłączeniu urządzenia.Menedżer plików SpaceFM umożliwia to. Zobacz ustawienia Auto Run , na przykład Auto Run | Po zamontowaniu lub automatycznym uruchomieniu | Po odmontowaniu .