我正在尝试为 USB 驱动器插件编写一个 udev 规则。我想先将它挂载到 /media
,然后在 /usr/local/bin/script.sh
运行脚本。当我插入 USB 时,它甚至不使用此规则安装设备。但是,如果我在终端中手动输入 RUN 中的部分,它会挂载并执行脚本。
规则文件说:
ACTION=="add", KERNEL=="sd[a-z]*", RUN+="/bin/mount -t auto /dev/%k /media/ && /usr/local/bin/script.sh"
这是在规则的 RUN 部分执行两个命令的正确方法吗?
最佳答案
/bin/mount
不将 &&
作为参数。如果要执行 shell 链,则必须将其传递给 shell。
RUN+="/bin/sh -c '...'"
关于linux - udev 规则不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21365937/