Regra UDEV não acionando

1

Eu passei por 10s de respostas neste e em outros sites tentando depurar minha regra do udev, mas sem sucesso. A regra é muito simples: quero bloquear minha tela quando meu Yubikey estiver desconectado.

  • Minha regra está no arquivo /etc/udev/rules.d/98-yubikey.rules .
  • Eu tentei # udevadm control --reload-rules && udevadm trigger e simplesmente reinicializei meu computador para atualizar as regras.

Aqui estão as regras que tentei até agora, nenhuma das quais bloqueia a tela (testei que o script, de fato, bloqueia a tela quando executado).

  1. ACTION=="remove", SUBSYSTEM=="input", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="YYYY", RUN+="/home/user/bin/lock_screen", OWNER="user"
  2. ACTION=="add", SUBSYSTEM=="input", ENV{ID_VENDOR_ID}=="XXXX", ENV{ID_MODEL_ID}=="YYYY", RUN+="/home/user/bin/lock_screen", OWNER="user"
  3. Várias combinações desses itens com ou sem subsistema / proprietário (e com subsistema como usb em vez de entrada).
por Californian 13.12.2014 / 21:46

1 resposta

1

Eu tenho um sistema configurado para fazer o mesmo e se parece com isso:

SUBSYSTEM=="input", ACTION=="remove", RUN+="/usr/local/sbin/yubikey_gone"

Em seguida, o script /usr/local/sbin/yubikey_gone contém:

#!/bin/sh

if [ "x$ID_MODEL" != "xYubico_Yubikey_II" ]; then
    exit 0
fi

exec su vandry -c "DISPLAY=:0.0 gnome-screensaver-command --lock"

Isso invoca o script quando qualquer dispositivo de entrada é desconectado, e então o script testa se foi ou não um Yubikey antes de continuar. Não é a solução correta, mas devo ter tido problemas para fazer com que o teste do modelo do dispositivo funcione diretamente no arquivo de configuração do udev (não me lembro por quê - o script não foi tocado há muito tempo). Não é o melhor caminho, mas pelo menos funciona.

    
por 13.12.2014 / 21:59

Tags