我创建了以下文件
$ cat /etc/udev/rules.d/10-tuned.rules
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Charging", RUN+="touch /home/fx/charg"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Discharging", RUN+="touch /home/fx/disc"
但如果我连接或断开电源线,则不会创建任何文件。创建这个文件后我执行了
sudo udevadm control --reload-rules
用于规则重新加载。我做错了什么?
答案1
我更改touch
为/usr/bin/touch
并且有效。该指令需要可执行文件的完整路径RUN
(否则可执行文件必须位于/lib/udev
):
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Charging", RUN+="/usr/bin/touch /home/fx/charg"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_STATUS}=="Discharging", RUN+="/usr/bin/touch /home/fx/disc"