Ligação a unidades do dispositivo systemd de dispositivos bluetooth conectados

3

Quando conecto um dispositivo bluetooth (por exemplo, um wiimote) à minha máquina e listo todas as unidades de dispositivo do systemd por meio de systemctl list-units -t device , a unidade do dispositivo aparece como sys-subsystem-bluetooth-devices-hci0:ID.device .

Problema:

Eu quero vincular um serviço systemd a uma unidade de dispositivo bluetooth específica (por exemplo, wiimote). Assim, precisarei de uma ideia sobre o nome. O ID difere em duas máquinas Arch linux.

Perguntas:

  • Quem atribui esses dispositivos ID s a unidades de dispositivo bluetooth systemd?
  • A estática ID está no um sistema e entre as atualizações do sistema e, portanto, são serviços de ligação segura a essa unidade de dispositivo, ou seja, esse serviço só será acionado ao conectar um dispositivo bluetooth do mesmo tipo?
  • Posso alterar / influenciar esta ID ?

Tentativas:

Eu tentei alterar o ID com uma regra do udev após essa descrição no wiki do Arch . Via udevadm info -a -p $(udevadm info -q path -n /dev/hidraw4 ) eu tenho:

looking at device '/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/bluetooth/hci0/hci0:256/0005:057E:0330.000C/hidraw/hidraw4':
KERNEL=="hidraw4"
SUBSYSTEM=="hidraw"
DRIVER==""

looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/bluetooth/hci0/hci0:256/0005:057E:0330.000C':
KERNELS=="0005:057E:0330.000C"
SUBSYSTEMS=="hid"
DRIVERS=="wiimote"
ATTRS{country}=="00"
ATTRS{devtype}=="gen20"
ATTRS{extension}=="none"

looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/bluetooth/hci0/hci0:256':
KERNELS=="hci0:256"
SUBSYSTEMS=="bluetooth"
DRIVERS==""

Todas as entradas KERNEL(S) não são iguais em dois sistemas. Eu tentei aplicar a regra do udev:

SUBSYSTEMS=="hid", DRIVERS=="wiimote", TAG+="systemd", SYMLINK+="wii"

Mas isso não cria nenhuma unidade de dispositivo adicional.

    
por Marcus 23.05.2017 / 16:17

0 respostas