A luz de fundo do teclado acende após a tela de bloqueio / exibição ligada

9

Acabei de atualizar o Ubuntu (15.04 para 15.10) e agora estou tendo um comportamento estranho: sempre que bloqueio a tela (use Ctrl + Alt + L, Win + L ou clique em "Bloquear" na barra de tarefas menu), a luz de fundo do teclado acende, mesmo que eu sempre a mantenha desligada.

Não faço ideia por onde começar a investigar isso. Isso não aconteceu no Ubuntu 15.04, e não parece que outras pessoas tenham encontrado isso.

Meu laptop é um Dell Inspiron, se ajudar.

Atualização: Mais tarde, entendi que esse problema ocorre sempre que a tela é ligada, o que acontece logo após o bloqueio da tela devido a um erro . Portanto, esses são eventos relacionados, mas a causa real é a tela ligada.

dsetton
fonte
Quem faz o teclado?
Alex Lowe
Hum, eu não sei. Você sabe como eu posso verificar isso?
Dsetton 19/11
Talvez na parte de trás possa haver um número de modelo ou algo assim.
Alex Lowe
Não há nada específico do teclado na parte de trás. Instalei o hardinfopacote e o teclado é exibido como "AT Translated Set 2 keyboard" pelo fornecedor "1". Será que isso ajuda em tudo ...?
dsetton
Existe um driver ou software para esse teclado que você conhece?
Alex Lowe

Respostas:

13

Portanto, a Web é realmente uma coisa incrível! Após muita pesquisa e mergulhar em muitos links do fórum, consegui entender melhor o problema, descobrir qual programa era responsável por ele e, finalmente, desativar esse comportamento para sempre. Pensei em anotar meus passos, caso outras pessoas encontrem o mesmo problema.

Etapa 1. Monitore o sistema para saber se / quando a luz de fundo do teclado está sendo ligada

A primeira coisa é saber que o status atual da luz de fundo do teclado pode ser verificado lendo o arquivo /sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/brightness. Portanto, gostaríamos de ser notificados de quaisquer alterações nesse arquivo e, idealmente, qual processo chamou a alteração.

Isso pode ser feito usando o fanotify . Eu usei o programa de exemplo que é fornecido na página de manual e adicionei algumas modificações * para que eu pudesse monitorar as alterações no arquivo de brilho. Acontece que o processo responsável pela modificação foi /usr/lib/upower/upowerd, que é um processo daemon para a UPower .

Etapa 2. Descubra por que o UPower está ativando a luz de fundo (falha)

Essa foi a parte mais confusa da investigação, e ainda não sei dizer por que isso acontece. Eu encontrei uma pessoa com um problema muito semelhante, mas sem solução, então comecei a ver se conseguia desativar completamente o UPower (e quais seriam as consequências) quando encontrei este link . Acontece que o UPower tem um arquivo de configuração! Isso é melhor.

Etapa 3. Pare a UPower de ligar a luz de fundo do teclado

Por fim, editei o arquivo de configuração mencionado acima, localizado em /etc/dbus-1/system.d/org.freedesktop.UPower.confe mudei <allow>para <deny>na seguinte linha:

<allow send_destination="org.freedesktop.UPower"
       send_interface="org.freedesktop.UPower.KbdBacklight"/>

Eu reiniciei o dbus com sudo service dbus restart(uso systemctl restart dbus.serviceno Ubuntu 16.04 e posterior) e continuei bloqueando minha tela para testar o resultado e ... Funcionou !! Bem, sorta. A tela de login não apareceu, então não pude entrar novamente e tive que forçar a reinicialização. Mas então tudo funcionou muito bem!

E é isso! Ainda estou curioso para saber qual seria o caminho certo para fazer isso. Se você sabe, deixe um comentário, por favor!

* Por exemplo, o programa de exemplo foi configurado apenas para monitorar FAN_OPEN_PERMe FAN_CLOSE_WRITEeventos, mas nisso foi um FAN_MODIFYevento.

dsetton
fonte
Acabei de editar o arquivo org.freedesktop.UPower.conf como você especificou e funcionou. Eu acho que a mudança foi aplicada imediatamente.
19415 Vic
11
Obrigado cara :) funcionou. você merece uma cerveja! qual é a sua Um número / c;) por agora lidar com este +1 aplausos
A Voyou
@TheVOYOU Fico feliz que funcionou para você! :)
dsetton
Essa correção também funciona para 16.04, exceto por algum motivo, não consigo mais reiniciar o serviço dbus. Eu tive que reiniciar o meu laptop.
RoraΖ