Suspendre et mettre en veille prolongée un ordinateur portable
Concepts de base
| Mode | Nom | Description |
|---|---|---|
| Suspendre | Suspendre (S3) | État enregistré dans la RAM, faible consommation, reprise rapide |
| Hiberner | Hiberner (S4) | État écrit sur le disque d’échange, entièrement hors tension, reprise plus lente |
| Sommeil hybride | Sommeil hybride | État enregistré à la fois sur la RAM et sur le disque, équilibrant vitesse et sécurité |
Suspension des tests
# Suspend to RAM
sudo systemctl suspend
# Check supported sleep modes
cat /sys/power/stateConfiguration de la mise en veille prolongée
Conditions préalables
Hibernate nécessite un espace de swap non inférieur à la taille de la mémoire physique.
# Check memory and swap
free -h
# Check swap partition/file
swapon --showUtiliser un fichier d’échange pour Hibernate
Si vous utilisez un fichier d’échange au lieu d’une partition d’échange :
# 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/fstabConfiguration des paramètres du noyau
Recherchez le décalage physique du fichier d’échange :
sudo filefrag -v /swapfile | head -4Notez la valeur physical_offset de la première ligne. Recherchez ensuite l’UUID de la partition contenant le fichier d’échange :
findmnt -no UUID -T /swapfileModifiez la configuration GRUB :
sudo nano /etc/default/grubModifier GRUB_CMDLINE_LINUX_DEFAULT :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=YOUR_UUID resume_offset=OFFSET_VALUE"Mettez à jour GRUB et 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 allTester la mise en veille prolongée
sudo systemctl hibernateSommeil hybride
sudo systemctl hybrid-sleepFermeture du couvercle et comportement du bouton d’alimentation
Modifier /etc/systemd/logind.conf :
[Login]
HandleLidSwitch=suspend
HandleLidSwitchExternalPower=ignore
HandlePowerKey=poweroff
HandleSuspendKey=suspendValeurs disponibles : ignore, poweroff, reboot, halt, suspend, hibernate, hybrid-sleep, lock.
Redémarrez le service après avoir apporté des modifications :
sudo systemctl restart systemd-logindProblèmes courants
Impossible de se réveiller après une suspension
- Vérifiez les journaux du noyau :
journalctl -b -1 | grep -i "suspend\|resume\|sleep"- Essayez d’ajouter des paramètres de noyau dans GRUB :
acpi_osi=Linux acpi_backlight=vendor- Pour les utilisateurs de GPU NVIDIA, assurez-vous que la version du pilote est récente et que la gestion de l’alimentation est activée :
sudo systemctl enable nvidia-suspend nvidia-resume nvidia-hibernateImpossible de reprendre après la mise en veille prolongée
Confirmez que les paramètres de reprise sont correctement configurés et vérifiez si initramfs inclut le module de reprise :
# 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 resumeWi-Fi indisponible après le réveil
sudo systemctl restart NetworkManager
# Or reload the wireless module
sudo modprobe -r iwlwifi && sudo modprobe iwlwifiBluetooth indisponible après le réveil
sudo systemctl restart bluetooth
sudo rfkill unblock bluetoothOptimisation de la gestion de l’alimentation
Installez TLP pour optimiser la puissance des ordinateurs portables :
sudo apt install tlp tlp-rdw
sudo systemctl enable tlp
sudo tlp startVérifiez l’état de la batterie :
tlp-stat -b