Nel block
sottosistema è presente un dispositivo di archiviazione , quindi ti consigliamo di utilizzare SUBSYSTEM=="block"
la regola, in questo modo:
ACTION=="add", KERNEL=="sd?", SUBSYSTEM=="block", ENV{ID_BUS}=="usb", \
RUN+="/path/to/script"
Se lo stai utilizzando systemd
, puoi eseguire systemd
un'unità ogni volta che viene aggiunto un dispositivo di archiviazione USB. Creare il file di unità, ad esempio /etc/systemd/system/my-usb-rule.service
:
[Service]
Type=oneshot
ExecStart=/path/to/script
e la regola, ad esempio /etc/udev/rules.d/85-my-usb-rule.rules
:
ACTION=="add", KERNEL=="sd?", SUBSYSTEM=="block", ENV{ID_BUS}=="usb", \
ENV{SYSTEMD_WANTS}="my-usb-rule.service"
Ora udev
si innescherà my-usb-rule.service
(che a sua volta eseguirà il tuo script) su qualsiasi evento di aggiunta del dispositivo di archiviazione USB .
Non dimenticare di ricaricare la configurazione dopo aver modificato le regole / unità:
udevadm control --reload
systemctl daemon-reload