Um dispositivo de armazenamento está no blocksubsistema, então você desejará SUBSYSTEM=="block"em sua regra, assim:
ACTION=="add", KERNEL=="sd?", SUBSYSTEM=="block", ENV{ID_BUS}=="usb", \
RUN+="/path/to/script"
Se você estiver usando systemd, poderá executar uma systemdunidade sempre que um dispositivo de armazenamento USB for adicionado. Crie o arquivo da unidade, por exemplo /etc/systemd/system/my-usb-rule.service:
[Service]
Type=oneshot
ExecStart=/path/to/script
e a regra, por exemplo /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"
Agora udevserá acionado my-usb-rule.service(que, por sua vez, executará seu script) em qualquer evento de adição de dispositivo de armazenamento USB .
Não se esqueça de recarregar a configuração depois de editar as regras / unidades:
udevadm control --reload
systemctl daemon-reload