I'm running RHEL6 and I'm trying to write a udev rule that is triggered upon plugging in and removing usb devices. I created a file called
/etc/udev/rules.d/ and I gave it the following contents (so far nothing too specific, just want to test):
ACTION=="add", SUBSYSTEMS=="usb", RUN+="touch /tmp/test"
I saved the file and plugged in a USB drive to test. However, the file
/tmp/test was not created.
I figure my udev rule should match my USB drive, since I can run
udevadm info on the USB drive and at least one of the parent devices has the attribute
Why might the udev rule not get triggered?
I tried to run
udevadm test --action=add /path/to/device and it is clear that the
.rules file that I wrote is being processed and that my rules are being matched. Here are a few relevant lines from the output:
parse_file: reading '/etc/udev/rules.d/80-usb.rules' as rules file udev_rules_apply_to_event: RUN '/bin/touch /tmp/test' /etc/udev/rules.d/80-usb.rules:1 udevadm_test: run: '/bin/touch /tmp/test'
/tmp/test does not exist. I am so confused. Clearly this rule is being matched and the rules are being applied. So why doesn't the command specified by