อุปกรณ์เก็บข้อมูลอยู่ใน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