我已经尝试过这个:如何在插入 USB 设备时执行 shellscript并为“lsusb”提供以下输出:
Bus 002 Device 007: ID 046d:0825 Logitech, Inc. Webcam C270
并在 /etc/udev/rules.d/camset.rules 中
ATTRS{idvendor}=="046d", ATTRS{idproduct}=="0825", RUN+="camset.sh"
camset.sh 位于根目录。当我运行“sh camset.sh”时,它运行良好,所以我认为这没有任何问题。谢谢您的帮助
答案1
来自udev 文档:
RUN
(…) 如果没有给出绝对路径,则程序预计位于 中/usr/lib/udev
,否则必须指定绝对路径。
Udev 不使用PATH
环境变量。您需要指定完整路径。根据通常的目录结构约定,这应该是/usr/local/sbin/camset.sh
- /usr/local
对于本地编写的文件,sbin
对于包含仅对 root 有意义的可执行文件的目录。不要将文件放在根目录中。