Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Drtihlav 22 Června 2013, 19:53:48
-
Dobrý den všem! Pokouším se spustit po připojení USB zařízení nějaký program.
Vytvořil jsem tedy v adresáři /etc/udev/rules.d/ soubor 99-usb.rules s co možná nejjednodušším obsahem:
ACTION=="add", SUBSYSTEM=="usb", RUN+="/home/python/skript.sh"
kde skript.sh je spustitelný skript, který vypadá např.:
#!/bin/bash
echo 'Ahoj USB!' >> "/home/uživatel/Plocha/udev.out"
exit
Text "Ahoj USB" je v souboru dvakrát. Že by se skript spustil jak pod uživatelem, tak pod rootem?
Prosím o pomoc, už jsem nad tím strávil příliš času...
-
Kernel při připojení USB zařízení zkrátka vygeneruje více než jednu událost odpovídající podmínce SUBSYSTEM=='usb'. Musíš přidat podmínku další, abys odfiltroval, co nechceš. Koukni se, co za události kernel generuje po připojení USB zařízení, případně na jejich vlastnosti. Viz man udevadm.
-
Díky moc!
Přidal jsem podmínku ATTRS{serial}=="....". Rules pak funguje pouze na toto zařízení, nicméně se skript spouští stále 2x.
Ještě zkusím prozkoumat tu Tvou poznámku s kernelem...