Устройство хранения находится в block
подсистеме, так что вы захотите SUBSYSTEM=="block"
в своем правиле, например так:
ACTION=="add", KERNEL=="sd?", SUBSYSTEM=="block", ENV{ID_BUS}=="usb", \
RUN+="/path/to/script"
Если вы используете systemd
, вы можете запускать systemd
устройство каждый раз, когда добавляется USB-накопитель. Создайте файл модуля, например /etc/systemd/system/my-usb-rule.service
:
[Service]
Type=oneshot
ExecStart=/path/to/script
и правило, например /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"
Теперь udev
сработает my-usb-rule.service
(который, в свою очередь, выполнит ваш скрипт) на любом событии добавления устройства хранения USB .
Не забудьте перезагрузить конфигурацию после редактирования правил / единиц:
udevadm control --reload
systemctl daemon-reload