Como fazer com que um dispositivo específico tenha permissões de leitura / gravação quando conectado?

2

Eu tenho um dispositivo caseiro que pode ser conectado via porta USB. Quando conectado, ele obtém o soquete ttyACM. Então eu perguntei esta questão algum tempo atrás sobre como definir permissões de leitura / gravação para o dispositivo. Após a resposta, criei o arquivo /etc/udev/rules.d/50-ttyusb.rules com este conteúdo:

KERNEL=="ttyUSB[0-9]*",MODE="0666"
KERNEL=="ttyACM[0-9]*",MODE="0666"

Tudo funciona bem! Mas, se bem entendi, agora todos os dispositivos conectados em qualquer soquete ttyUSB ou ttyACM terão permissões de leitura / gravação. Certo?

Minha pergunta é como definir automaticamente as permissões de leitura / gravação somente para este dispositivo quando conectado?

% relevantelsusb output:

Bus 003 Device 005: ID ffff:0005
    
por NonStandardModel 06.06.2016 / 12:41

1 resposta

1
  • Sim, ele dá permissão a usuários públicos para todos esses dispositivos seriais.
  • Você pode usar ATTRS{idVendor} & ATTRS{idProduct} para filtrar dispositivos de destino:

    ACTION=="add", KERNEL=="ttyACM[0-9]*", ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="0005", MODE="0666"
    

    Eu adiciono ACTION=="add" para pular outro evento indesejável remove (nó do dispositivo já removido) & change (nó do dispositivo já adicionado e configurado)

por user.dz 08.06.2016 / 05:40