Como configurar o notebook para suspender ou hibernar quando fechar a tampa no Debian e Ubuntu. – Elias Praciano
Categories
Debian Linux Tutoriais Ubuntu

Como configurar o notebook para suspender ou hibernar quando fechar a tampa no Debian e Ubuntu.

Com a mudança de algumas distro para o systemd, a configuração das opções de suspender, hibernar e suspender-híbrido, passou por algumas alterações (ficou mais fácil, na verdade). Veja como acertar a configuração do seu sistema Debian ou Ubuntu.

Neste texto, vou explicar como suspender um laptop e, depois de algum tempo, salvar o estado do sistema para o disco e desligar o computador completamente.
Se você achar útil, leia sobre as diferenças entre suspender, hibernar e suspender-híbrido.
A base de testes para este artigo é uma máquina Debian 8.2 “Jessie” — portanto, estas dicas podem servir em outras distribuições GNU/Linux, baseadas no Debian, como o Ubuntu 15.10 ou superior (que passou a usar o systemd).

Suspender ou hibernar ao fechar a tampa do notebook

Normalmente, esta função já vem ativada. O seu notebook já vai ter este comportamento, logo após a instalação do Debian.
Se este não for o caso, é possível que seu equipamento tenha alguma incompatibilidade que precise ser resolvida antes.
Você pode testar o seu hardware para saber se é compatível com hibernação/suspensão ou verificar se está usando sistema de swap corretamente (a hibernação depende o swap).
Para conseguir alterar o estado do equipamento (suspensão, hibernação ou híbrido) ao fechar a tampa, é necessário verificar se há uma determinada linha de comando ativada no arquivo /etc/systemd/logind.conf, que lê a opção “HandleLidSwitch=”.
Pra ser sucinto, você precisa “descomentar” (remover os ‘#’) as seguintes linhas:

HandleLidSwitch=hibernate
LidSwitchIgnoreInhibited=yes


A primeira linha, suporta as opções suspend, hibernate e hybrid-sleep.
A linha LidSwitchIgnoreInhibited=yes é necessária para passar pelo inhibit do GNOME.
Depois de alterar o logind.conf, rode o comando:

systemctl restart systemd-logind.service


Agora teste a configuração, fechando a tampa do notebook.

Referências

As diferenças entre suspender, hibernar e suspender-híbrido.
https://wiki.debian.org/SystemdSuspendSedation
https://wiki.archlinux.org/index.php/Power_management#Suspend_and_hibernate
http://williamhollacsek.com/blog/2015/05/11/ubuntu-1504-hibernate-on-lid-close-with-systemd

By Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como "Rick and Morty" e "BoJack Horseman".
Me siga no Twitter e vamos trocar ideias!

9 replies on “Como configurar o notebook para suspender ou hibernar quando fechar a tampa no Debian e Ubuntu.”

Tive o mesmo problema no meu notebook Dell Latitude E5430. A solução foi fazer alguns ajustes na BIOS.
Mudei a opção RAID ON para AHCI, na aba SATA e ficou tudo lindo.

Complementando, o arquivo está assim:

# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See logind.conf(5) for details.

[Login]
HandleLidSwitch=hibernate
LidSwitchIgnoreInhibited=yes
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
#HandleLidSwitchDocked=ignore
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#HoldoffTimeoutSec=30s
#IdleAction=ignore
#IdleActionSec=30min
#RuntimeDirectorySize=10%
#RemoveIPC=yes

Aparentemente, está tudo bem, aí.
Novamente, às vezes o culpado é o hardware ou algum ajuste insuspeito no BIOS (é importante checar este item).
Já tentou trocar os valores hibernate por hybrid-sleep ou suspend.

Elias, engraçado é que esse problema deu com o Fedora 23 com Gnome 3, Ubuntu 15.10 Gnome e Ubuntu 15.10 Unity. Realmente pode ser alguma coisa na BIOS, ou no Hardware. Antes eu usava Ubuntu 14.04 LTS Unity (e não tinha esse problema) depois passei pra Ubuntu 14.10 Unity e também não tinha esse problema. Alguma sugestão sobre por onde começo em relação a BIOS?

O BIOS é um “território” que pode ser espinhoso… 😉
Cada máquina tem um firmware diferente, o que acaba por se traduzir em opções no menu do BIOS diferentes, além de nomes de recursos diferentes.
Antigamente (uns 15 anos atrás), conseguíamos fazer um PC “suar sangue” na nossa mão, com alguns bons ajustes no BIOS. Hoje, tudo está mais simples.
Você precisa olhar e analisar os itens do BIOS com cuidado. Pode usar o Google para procurar explicações para nomes de itens que não entenda.
Você pode começar por desligar todos os recursos relacionados a economia de energia (ACPI, APM, power management etc.) — deixar o Linux gerenciá-los costuma ser a melhor opção.

Olá Elias, tudo bem? Estou usando Ubuntu Gnome 15.10. Baixei ele assim porque prefiro o Gnome em relação ao Unity. No entanto, e mesmo já tendo seguindo o seu passo a passo, toda que vez que abro a tampa do meu notebook, ele trava. Quando fecho, ele hiberna normalmente, mas não volta da hibernação. Trava na tela que parou e só consigo fazer voltar depois de desligar e ligar novamente o notebook.

Você saberia me dar alguma dica?

Obrigado e parabéns pelo post e pelo blog!

Pois é. 😉
Eu incentivo muito as pessoas, nos meus artigos, a usarem softwares “em desenvolvimento”. Não é bem este o caso do Ubuntu 15.10, mas ele não tem a estabilidade de um LTS.
Vale reforçar que este é o primeiro Ubuntu a vir com o systemd.
Além do sistema operacional, o seu hardware também tem que ajudar/colaborar para o processo de hibernação/suspensão dar certo.
(Vou arriscar alguns palpites na tua outra pergunta… )

Interessante a sua observação sobre a BIOS e acho que o problema está aí porque testei com o Ubuntu 14.04.3 LTS e também deu o mesmo problema. Problema é que não conheço muito de BIOS. Estou estudando, mas meio perdido. Se alguém puder me ajudar, ficarei muito grato!

Obrigado, Elias. Sobre o que você disse, já sim: tentei Jtrocar os valores hibernate por hybrid-sleep ou suspend, mas também não resolveu. Hoje dei uma “fuçada” na BIOS, mas não adiantou. Achei uma coisa interessante: tem habilitado a opção de boot pela placa de vídeo. Dei boot por ela e deu tela preta. Talvez signifique alguma coisa. Alterei de Legacy para UEFI, mas também não adiantou. Agora, vou instalar o Windows 10 pra ver o comportamento. Também tentei “restaurar o padrão” da BIOS, mas também não adiantou. O Engraçado é que o Notebook hiberna desde que não seja pelo fechamento de tampa. Pelo comando via terminal também trava quando tenta voltar. Muito estranho… mas vou colocando a minha saga aqui porque pode ajudar um próximo. Obrigado e se lembrar de algo que eu possa fazer, só colocar aqui que tô acompanhando! 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.