Como escrevo uma regra do udev para persistir um atributo na inicialização?

Como escrevo uma regra do udev para persistir um atributo na inicialização?

Quero persistir o valor de /sys/devices/platform/lg-laptop/fn_lockser 1após uma reinicialização. Depois de muita pesquisa, parece que a maneira certa de fazer isso é criar uma regra do udev para isso. Então eu corri udevadm info -a -p /sys/devices/platform/lg-laptop/que retorna isso:

looking at device '/devices/platform/lg-laptop':
    KERNEL=="lg-laptop"
    SUBSYSTEM=="platform"
    DRIVER=="lg-laptop"
    ATTR{battery_care_limit}=="0"
    ATTR{driver_override}=="(null)"
    ATTR{fan_mode}=="0"
    ATTR{fn_lock}=="0"

E criei um arquivo /etc/udev/rules.d/99-fnlock.rulescom o seguinte conteúdo:

ACTION=="change", KERNEL=="lg-laptop", SUBSYSTEM=="platform", ATTRS{fn_lock}="1"

Mas não parece ter nenhum efeito quando eu reinicio. Minha sintaxe está errada ou estou entendendo mal como definir atributos com o udev?

Responder1

A sintaxe correta para o arquivo de regras era:

SUBSYSTEM=="platform", DRIVER=="lg-laptop", ATTR{fn_lock}="1"

Acho que meu erro provavelmente foi ATTRS{fn_lock}em vez de ATTR{fn_lock}, já que as regras de correspondência (aquelas com ==operador) parecem um pouco flexíveis.

informação relacionada