我在这个网站和其他网站上试着调试我的udev规则,我已经经历了10多个答案,但是没有结果。规则非常简单:当我的尤比基拔出时,我想锁定屏幕。
/etc/udev/rules.d/98-yubikey.rules中。# udevadm control --reload-rules && udevadm trigger和简单地重新启动我的计算机来更新规则。下面是我已经尝试过的规则,这些规则都没有锁定屏幕(我已经测试过脚本在运行时确实会锁定屏幕)。
ACTION=="remove", SUBSYSTEM=="input", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="YYYY", RUN+="/home/user/bin/lock_screen", OWNER="user"ACTION=="add", SUBSYSTEM=="input", ENV{ID_VENDOR_ID}=="XXXX", ENV{ID_MODEL_ID}=="YYYY", RUN+="/home/user/bin/lock_screen", OWNER="user"发布于 2014-12-13 20:59:37
我已经配置了一个系统来进行同样的操作,它看起来如下:
SUBSYSTEM=="input", ACTION=="remove", RUN+="/usr/local/sbin/yubikey_gone"然后脚本/usr/local/sbin/yubikey_gone包含:
#!/bin/sh
if [ "x$ID_MODEL" != "xYubico_Yubikey_II" ]; then
exit 0
fi
exec su vandry -c "DISPLAY=:0.0 gnome-screensaver-command --lock"这将在任何输入设备被拔出时调用脚本,然后脚本在继续之前测试它是否确实是一个Yubikey。这不是正确的解决方案,但我一定很难让它直接在udev配置文件中使用设备模型测试(我不记得为什么--脚本已经很长时间没有被碰过了)。这不是最好的方法,但至少有效。
https://unix.stackexchange.com/questions/174099
复制相似问题