não hibernará quando bateria crítica

19

O Ubuntu 12.04 64bit se recusa a hibernar quando a bateria está criticamente baixa. Em vez disso, faz um desligamento completo, que é desnecessário e pode causar perda de dados.

Eu habilitei o Hibernate (pm-hibernate) seguindo as instruções comuns I testado pm-hibernate funciona bem quando executado manualmente.

Configurei minhas opções de energia para hibernar "Quando a energia está criticamente baixa". Isso também foi verificado usando o editor dconf. Sob org > gnome > configurações-daemon > plugins > poder > critical-battery-action está configurado para "hibernar". No mesmo esquema, a ação do tempo é definida como "120".

Eu gostaria de ver o que está acontecendo logo antes desse desligamento. Gostaria de saber quais logs pesquisar para ver se o pm-hibernate está realmente falhando ou se está sendo totalmente ignorado.

Além de descobrir isso por conta própria, há algum trabalho sugerido?

    
por swysocki 02.10.2012 / 20:35

2 respostas

12

Eu encontrei outra solução para o meu sistema Ubuntu 14.04. Talvez funcione para você.

Primeiro, instale as ferramentas do modo laptop

sudo apt-get install laptop-mode-tools

Em seguida, você deve ativar a função de hibernação automática. Você deve editar um arquivo de texto:

sudo gedit /etc/laptop-mode/conf.d/auto-hibernate.conf

Lá, procure o parâmetro ENABLE_AUTO_HIBERNATION e substitua o 0 por 1:

% bl0ck_qu0te%

No mesmo arquivo, você também quer ajustar a porcentagem de carga da bateria quando o computador hibernar. Por exemplo:

% bl0ck_qu0te%

Salve o arquivo e teste a configuração, deixando a bateria descarregar. Se funcionar, você deve configurar as ferramentas do modo laptop como padrão, criando um script:

sudo touch /etc/pm/sleep.d/10-laptop-mode-tools
sudo chmod a+x /etc/pm/sleep.d/10-laptop-mode-tools
sudo gedit /etc/pm/sleep.d/10-laptop-mode-tools

Então, no gedit, copie e cole isto:

case $1 in
    hibernate)
        /etc/init.d/laptop-mode stop
        ;;
    suspend)
        /etc/init.d/laptop-mode stop
        ;;
    thaw)
        /etc/init.d/laptop-mode start
        ;;
    resume)
        /etc/init.d/laptop-mode start
        ;;
    *)
        echo Something is not right.
        ;;
esac

Salve o arquivo, reinicie o sistema e teste novamente. Espero que funcione para você.

Na minha opinião, parece que algo está interferindo no gnome-power-manager. Se alguém reproduzir o problema, poderemos relatar um erro.

Referências:

Dicas para economizar energia por link

Re: Fazendo o Ubuntu suspender automaticamente em bateria fraca (linha de comando) por Isamu715 link

    
por Goghard 22.04.2014 / 20:30
3

Eu tive / tive o mesmo problema com o monitoramento de energia não-preciso 12.04, algumas possibilidades:
(para ir direto ao assunto e evitar a retórica, leia o ponto final - é irritante que uma "correção" seja necessária para restaurar tal funcionalidade mundana e comum)

  1. Unity e 12.04 não fornecem a funcionalidade de 10.04 que possui uma confiabilidade mais robusta, especialmente o gerenciamento de energia, portanto a regressão é a opção que eu uso. O amadurecimento sofisticado de um ambiente de sistema de computação (Debian, GNU, Linux, ...) requer um alto grau de disciplina rigorosa comparável para reter e modificar a funcionalidade de forma consistente. Consequentemente, vários paradigmas de software bem estabelecidos se degradaram e foram comprometidos, incluindo o gerenciamento de energia.

  2. referência:
    Bug # 993440 "Nenhuma opção de suspensão para estado crítico da bateria no ...": Bugs: pacote "gnome-control-center": Ubuntu:
    solução: (trabalho manual intensivo) lp: ~ jlangvand / ubuntu / quantal / gnome-control-center / correção-para-993440

  3. Escreva um script (use manualmente mais intensamente) usando pm-hibernate ( pm-suspend ), watch , upower , grep etc. para monitorar o estado da bateria e agir quando necessário.

    pseudo código de contorno:
    Use watch , a intervalos de alguns minutos, para comparar periodicamente as estatísticas de grep upower -d battery com gsettings get org.gnome.settings-daemon.plugins.power percentage-critical e quando o limite for excedido sudo pm-hibernate

    rascunho bruto (como no protótipo apenas, não executável): (suspender por qualquer bateria% < 10%)
    upower --monitor-detail | grep "percentage[^\d]+\d\.\d*\%" | bash pm-suspend

    uma solução elegante

    • aborta mais watch ing na suspensão
    • verifica todas as fontes de alimentação transientes: no-breaks, baterias terciárias, painéis solares (a energia diminui ao anoitecer e por nuvens), etc.
    • permite a suspensão não privilegiada (/ hibernação) para usuários restritos

refs:

O desempenho da bateria pode ser examinado com:

  • %código%
    • upower
    • watch -d upower -i /org/freedesktop/UPower/devices/battery_BAT0
  • upower --monitor-detail | grep percentage

Como verificar o status da bateria usando o terminal?
Como posso encontrar a taxa de descarga da bateria?

    
por guest 16.12.2012 / 23:21