我有一个 udev 规则,用于在 USB 集线器被移除时停止系统:
SUBSYSTEM=="usb", ACTION=="remove", ENV{ID_VENDOR_ID}="050d", ENV{ID_MODEL_ID}="0237", RUN+="/sbin/halt"
不幸的是,当插入该集线器的设备被移除时,这也会触发。我查看了udevadm monitor --udev --property
插入和拔出设备时的输出,没有一组字段可以被隔离为删除集线器所独有的。
有谁知道我如何才能仅针对集线器而不包括连接到其的设备的删除事件?
答案1
猜猜谁使用了“=”而不是“==”,这意味着该规则将匹配任何删除事件?哎呀...
两组事件有很多重叠,但针对该中心的线路是:
ACTION=="remove", ENV{PRODUCT}=="50d/237/100", RUN+="/sbin/shutdown -h now"