Problema: notebook hiberna ou desliga quando fonte é desconectada

Publicado por Davidson Rodrigues Paulo em 02/03/2010

[ Hits: 13.406 ]

Blog: http://davidsonpaulo.com/

 


Problema: notebook hiberna ou desliga quando fonte é desconectada



Recentemente comprei um netbook LG X110 que veio de fábrica com Windows XP instalado. Abri espaço para o Linux, instalei o Fedora 12 e me surpreendi muito com o resultado. Todo o hardware foi reconhecido, incluindo a webcam e as teclas especiais para aumentar volume, brilho de tela, ligar/desligar wireless etc. A satisfação só não foi completa por causa de um único problema. Nada grave, é verdade, mas muito chato. Quando a fonte era desconectada do netbook, o gerenciador de energia detectava que a bateria estava com a carga criticamente baixa e disparava a ação programada (suspender, hibernar ou desligar, dependendo da configuração). O curioso é que a mensagem de alerta dizia que a bateria estava com mais de 90% de carga, mas que só duraria 2 minutos, o que era totalmente incoerente.

Eu não sabia muita coisa sobre gerenciamento de energia, mas sabia que o ACPI estava envolvido, então fui estudar um pouco sobre como ele funciona e como o Linux o trata. Descobri, entre outras coisas, que o ACPI funciona em três camadas: hardware, sistema operacional e software. No Linux, a camada de software padrão é fornecida pelo daemon acpid, que deve ser configurado para executar ações quando o kernel identificar um evento disparado pelo hardware. No GNOME, que é o ambiente desktop que eu utilizo, esse papel é feito pelo gnome-power-manager. Então tentei modificar a configuração do acpid para que ele impedisse o gnome-power-manager de acionar a ação de bateria criticamente baixa quando a fonte fosse desconectada, mas não foi possível.

O gnome-power-manager identifica o evento de ACPI assim que ele ocorre, disparando a ação imediatamente. Eu teria que descobrir se era possível alterar a configuração do gnome-power-manager de forma que ele não apresentasse mais esse comportamento errôneo, mas ao acessar as preferências de gerenciamento de energia (Sistema / Preferências / Gerenciamento de energia) não havia nenhuma opção que me ajudasse.

Foi só então que me deu aquele "estalo", e me lembrei da filosofia do GNOME, que diz que tudo nesse ambiente desktop deve ser desenvolvido pensando no usuário como se fosse um completo idiota que vai estragar tudo se tiver a oportunidade, portanto todas as configurações avançadas ficam escondidas debaixo do GConf.

Abri então o gconf-editor (Aplicativos / Sistema / Editor de configurações), localizei as chaves de configuração do gnome-power-manager e descobri que a solução para o meu problema era alterar o valor da chave apps / gnome-power-manager / general / use_time_for_policy para false. Essa opção diz exatamente qual dos indicadores deve ser considerado na hora de analisar se alguma ação deve ser disparada, se a carga da bateria ou se o tempo de carga estimado. Após essa alteração, o gnome-power-manager passou a considerar a carga total da bateria e, como esse valor era sempre medido corretamente, o problema foi resolvido. Desconectei a fonte de energia e o netbook permaneceu ligado sem emitir nenhum alerta.

Depois disso, só por curiosidade, fui verificar como poderia fazer a mesma coisa pela linha de comando (sim, eu confesso, adoro linha de comando). Eis a solução:

gconftool-2 --set --type boolean /apps/gnome-power-manager/general/use_time_for_policy false

Para que essa opção seja automaticamente ativada para os novos usuários que forem criados no sistema, basta criar, como root, o arquivo /etc/skel/.gconf/apps/gnome-power-manager/general/%gconf.xml e inserir o seguinte conteúdo:

<?xml version ="1.0"?>
<gconf>
  <entry name="use_time_for_policy" type="bool" value="false"/>
</gconf>

Fonte: Davidson Paulo - Uma mente inquieta

Outras dicas deste autor

Script para manter VPN PPTP ativa

Patch de 4 linhas para acelerar o Linux (Fedora 14)

Disquete no Linux sem precisar desmontar

Liberando acessos ao ldconfig com SELinux enforced

Corrigindo nomes de arquivos com charset errado

Leitura recomendada

Primeiras impressões após instalação do Arch Linux

Atualizando Linux Mint to 13 para o 14

Como remover o painel lateral do Unity - Ubuntu 12.04

Desabilitando dispositivos de armazenamento removíveis via USB no Debian Squeeze Testing

NAGIOS 3 - Error: Could not open command file '/usr/local/nagios/var/rw/nagios.cmd' for update

  

Comentários
[1] Comentário enviado por Lisandro em 05/07/2010 - 14:45h

Ótima dica.

[2] Comentário enviado por gpa0033 em 21/03/2011 - 07:36h

cara muito boa sua dica !!!

vc poderia colocar um tutorial de como ativar uma placa de video sis 761 na unha ? pois toda vez que meu micro é fechada a tampa , ele volta totalmente desconfigurado (video)

um grande abração e muito grato atencipadamente !

ocaipira



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts