Skip to Content
DocumentaçãoReferênciaHardwareSuspender e hibernar

Suspensão e hibernação do laptop

Conceitos Básicos

ModoNomeDescrição
SuspenderSuspender (S3)Estado salvo na RAM, baixo consumo de energia, retomada rápida
HibernarHibernar (S4)Estado gravado na troca de disco, totalmente desligado, retomada mais lenta
Sono HíbridoSono HíbridoEstado salvo na RAM e no disco, equilibrando velocidade e segurança

Teste de suspensão

# Suspend to RAM sudo systemctl suspend # Check supported sleep modes cat /sys/power/state

Configurando o Hibernação

Pré-requisitos

O Hibernate requer espaço de troca não menor que o tamanho da memória física.

# Check memory and swap free -h # Check swap partition/file swapon --show

Usando um arquivo de troca para hibernar

Se estiver usando um arquivo swap em vez de uma partição swap:

# Create a swap file equal to RAM size (example: 16GB) sudo fallocate -l 16G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile # Write to /etc/fstab for persistence echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Configurando parâmetros do kernel

Encontre o deslocamento físico do arquivo de troca:

sudo filefrag -v /swapfile | head -4

Observe o valor physical_offset da primeira linha. Em seguida, encontre o UUID da partição que contém o arquivo de troca:

findmnt -no UUID -T /swapfile

Edite a configuração GRUB:

sudo nano /etc/default/grub

Modifique GRUB_CMDLINE_LINUX_DEFAULT:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=YOUR_UUID resume_offset=OFFSET_VALUE"

Atualize GRUB e initramfs:

sudo update-grub # Ubuntu 26.04 generates the initramfs with Dracut by default: sudo dracut -f --regenerate-all # On legacy initramfs-tools systems use instead: sudo update-initramfs -u -k all

Testando hibernação

sudo systemctl hibernate

Sono Híbrido

sudo systemctl hybrid-sleep

Comportamento do fechamento da tampa e do botão liga / desliga

Editar /etc/systemd/logind.conf:

[Login] HandleLidSwitch=suspend HandleLidSwitchExternalPower=ignore HandlePowerKey=poweroff HandleSuspendKey=suspend

Valores disponíveis: ignore, poweroff, reboot, halt, suspend, hibernate, hybrid-sleep, lock

Reinicie o serviço após fazer alterações:

sudo systemctl restart systemd-logind

Problemas comuns

Não é possível acordar após suspender

  1. Verifique os logs do kernel:
journalctl -b -1 | grep -i "suspend\|resume\|sleep"
  1. Tente adicionar parâmetros do kernel em GRUB:
acpi_osi=Linux acpi_backlight=vendor
  1. Para usuários da GPU NVIDIA, certifique-se de que a versão do driver seja recente e que o gerenciamento de energia esteja ativado:
sudo systemctl enable nvidia-suspend nvidia-resume nvidia-hibernate

Não é possível retomar após a hibernação

Confirme se os parâmetros de currículo estão configurados corretamente e verifique se initramfs inclui o módulo de currículo:

# Ubuntu 26.04 uses Dracut by default; list initramfs contents with lsinitrd: sudo lsinitrd /boot/initrd.img-$(uname -r) | grep resume # On legacy initramfs-tools systems use instead: lsinitramfs /boot/initrd.img-$(uname -r) | grep resume

Wi-Fi indisponível após acordar

sudo systemctl restart NetworkManager # Or reload the wireless module sudo modprobe -r iwlwifi && sudo modprobe iwlwifi

Bluetooth indisponível após despertar

sudo systemctl restart bluetooth sudo rfkill unblock bluetooth

Otimização do gerenciamento de energia

Instale o TLP para otimização de energia do laptop:

sudo apt install tlp tlp-rdw sudo systemctl enable tlp sudo tlp start

Verifique o status da bateria:

tlp-stat -b