首页 文章

synclient不适用于udev规则

提问于
浏览
1

此脚本用于检测插入鼠标,以及禁用/启用触摸板 .

这是触发脚本的udev规则:

ENV{DEVTYPE}=="usb_device", ACTION=="add", RUN+="/usr/local/bin/enable-disable-touchpad-when-add-remove-mouse.sh"

问题:当udev规则调用时,命令synclient不起作用 .

有趣的是,当插入或移除鼠标时,脚本确实运行并写入日志(我可以将日志拖尾并看到它运行) .

当我从shell手动运行脚本时,该脚本在任何用户(也是root)帐户下都可以正常运行 . 这是脚本

#!/bin/bash
let x=`lsusb | grep -i logite | wc -l`+`lsusb | grep -i mouse | wc -l`
echo `id` >> /tmp/usblog2
if [ $x -gt 0 ]
    then 
        echo touch off >> /tmp/usblog2
        /usr/bin/synclient touchpadoff=1
    else 
        echo touch on >> /tmp/usblog2
        /usr/bin/synclient touchpadoff=0
fi

有关为什么synclient不在udev下运行的猜测?

1 回答

相关问题