J'ai essayé différentes options pour activer la mise en veille prolongée dans Ubuntu 20.04 mais rien ne fonctionne. Comment puis-je activer l'option de mise en veille prolongée dans Ubuntu 20.04 ?
Réponses
Trop de publicités?Je suppose que vous avez une partition de swap prête à être utilisée (si vous avez un fichier swap, vous ne pouvez pas hiberner). Suivez ces étapes :
-
Installez
pm-utils
ethibernate
:sudo apt install pm-utils hibernate
-
Ensuite :
cat /sys/power/state
-
Vous devriez voir :
freeze mem disk
-
Ensuite, exécutez l'une des lignes suivantes :
grep swap /etc/fstab blkid | grep swap
-
Copiez la valeur
UUID
. Vous en aurez besoin plus tard. -
Ensuite, exécutez (utilisez votre éditeur préféré si ce n'est pas
nano
) :sudo nano /etc/default/grub
-
Modifiez la ligne qui dit :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
pour qu'elle dise plutôt :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID="
Faites attention à ne pas manquer la partie
UUID=
. -
Ensuite, après avoir enregistré le fichier et quitté l'éditeur de texte, exécutez :
sudo update-grub
-
Pour le tester, exécutez :
sudo systemctl hibernate
Cette extension semble permettre d'afficher l'entrée de menu "Hiberner", mais elle modifie l'apparence générale de ce sous-menu : https://extensions.gnome.org/extension/3070/simpler-off-menu/.
Testé sur Ubuntu 20.04 utilisant la version du noyau 5.4.0-31 sur mon Lenovo ThinkPad X1 Carbon.
Si vous souhaitez utiliser un /swapfile pour hiberner au lieu de la partition d'échange :
La meilleure réponse fonctionne bien, mais vous n'avez pas besoin d'utiliser une partition, vous pouvez également utiliser un /swapfile
par défaut.
Tout d'abord, vous devez augmenter la taille du /swapfile au moins à la taille de votre RAM.
-
Installer les dépendances :
sudo apt install pm-utils hibernate uswsusp
-
Trouver votre UUID et le décalage de l'échange :
findmnt -no UUID -T /swapfile && sudo swap-offset /swapfile
Vous verrez quelque chose comme ceci :
371b1a95-d91b-49f8-aa4a-da51cbf780b2 resume offset = 23888916
-
Modifier le fichier
/etc/default/grub
et remplacer la chaîne :GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
avec votre UUID et le décalage :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=371b1a95-d91b-49f8-aa4a-da51cbf780b2 resume_offset=23888916"
-
Mettre à jour GRUB :
sudo update-grub
-
Tester votre hibernation :
sudo systemctl hibernate
Vous ne devriez probablement pas changer la taille de votre échange après avoir activé l'hibernation (du moins sans changer le swap-offset
dans GRUB).
Voir la wiki pour plus de détails.
BONUS SUPPLÉMENTAIRE : Si vous voulez mettre en veille lorsque le couvercle d'un ordinateur portable est fermé (voir ceci) :
-
Désactivez toutes les options dans les paramètres qui concernent le couvercle de l'ordinateur portable, définissez-les sur "ne rien faire".
-
Exécutez :
sudo mkdir -p /etc/acpi/events/ && sudo nano /etc/acpi/events/laptop-lid
et collez :
event=button/lid.* action=/etc/acpi/laptop-lid.sh
-
Exécutez :
sudo touch /etc/acpi/laptop-lid.sh && sudo chmod +x /etc/acpi/laptop-lid.sh && sudo nano /etc/acpi/laptop-lid.sh
et collez :
#!/bin/bash LOG_FILE='/var/log/laptop-lid.log' touch $LOG_FILE && chmod 0666 $LOG_FILE grep -q closed /proc/acpi/button/lid/LID/state if [ $? = 0 ] then # action de fermeture echo "$(date '+%Y.%m.%d %H:%M:%S.%3N'): fermé" >> $LOG_FILE systemctl hibernate else # action d'ouverture echo "$(date '+%Y.%m.%d %H:%M:%S.%3N'): ouvert" >> $LOG_FILE fi
-
Exécutez :
sudo /etc/init.d/acpid restart
Et si vous voulez activer l'hibernation dans votre Ubuntu 20.04*, suivez ces étapes :
-
Assurez-vous d'allouer de la mémoire d'échange sur votre machine pour vérifier :
swapon --show
-
Vérifiez ensuite si la mémoire d'échange que vous avez allouée est supérieure ou au moins égale à la mémoire physique (RAM).
-
Utilisez la commande suivante pour trouver la partition d'échange :
grep swap /etc/fstab
-
Copiez l'UUID de la sortie par exemple(
UUID=XXXXX-XXX-XXXX-XXXX-YYYYYYYYYY
). -
Ajoutez un paramètre de démarrage avec la commande suivante :
sudoedit /etc/default/grub
-
Sur la ligne commençant par
GRUB_CMDLINE_LINUX_DEFAULT
, ajoutez :resume=UUID=XXXXX-XXX-XXXX-XXXX-YYYYYYYYYY
Note : Dans tous les autres threads ils demandaient d'ajouter une partition d'échange mais ici nous ajoutons la valeur UUID.
La dernière ligne sera comme suit :
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=XXXXX-XXX-XXXX-XXXX-YYYYYYYYYY"
-
Met à jour le fichier :
sudo update-grub
-
sudo systemctl hibernate
et l'hibernation fonctionnera maintenant sur votre Ubuntu 20.04.
La solution de eldwist a fonctionné pour moi, sauf...
...pas au début, car j'ai eu l'erreur suivante:
$ sudo systemctl hibernate
Échec de la mise en veille prolongée du système via logind : Verbe de veille non pris en charge
Si vous obtenez cette erreur, vous devez probablement désactiver le démarrage sécurisé dans le menu de sécurité de l'UEFI/BIOS (voir problème similaire avec 16.04). Ensuite, ça a fonctionné pour moi (testé sur Ubuntu 20.04, noyau 5.4.0-33, configuré pour le double démarrage avec Win10).
- Réponses précédentes
- Plus de réponses