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?La réponse de SuRa en haut fonctionne très bien, cependant, si votre ordinateur portable est livré avec un fichier d'échange au lieu d'une partition d'échange, vous devrez suivre quelques étapes d'abord pour que tout fonctionne. À un niveau élevé:
- Démarrez à partir du CD/DVD live ou de la clé USB, réduisez votre partition principale de la quantité de mémoire que vous avez plus 1-2 Go pour la marge. Par exemple, j'ai 16 Go donc j'ai réduit ma partition de 18 Go par mesure de sécurité. Cela laissera un espace vide/non partitionné sur votre disque.
- Créez une nouvelle partition de type swap dans l'espace vide/non partitionné sur votre disque.
- Redémarrez dans votre OS installé (c'est-à-dire sans le CD/DVD live ou la clé USB)
- Allez dans "partitions" ou "gparted" pour obtenir l'UUID de votre nouvelle partition d'échange.
- Ajoutez votre nouvelle partition d'échange à
/etc/fstab
et supprimez (ou commentez) l'ancien fichier d'échange - Utilisez les commandes
swapoff
etswapon
pour passer du fichier d'échange à la partition d'échange - N'oubliez pas de supprimer le fichier d'échange pour récupérer cet espace
- Maintenant vous pouvez suivre les instructions de SuRa.
Utilisation d'un périphérique de partition au lieu d'un UUID
J'ai dû m'écarter un peu du "comment faire" ci-dessus, probablement parce que j'ai crypté mon disque dur. Mon fichier /etc/fstab
ne contient pas d'UUID pour la partition d'échange mais un périphérique de partition.
Si votre /etc/fstab
contient un au lieu d'un UUID pour la partition d'échange, modifiez la ligne commençant par GRUB_CMDLINE_LINUX_DEFAULT
dans le fichier /etc/default/grub
pour qu'elle contienne resume=
Exemple:
si /etc/fstab
contient ceci
#
/dev/mapper/ubuntu--vg-swap_1 none swap sw 0 0
/etc/default/grub
devrait contenir la ligne
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=/dev/mapper/ubuntu--vg-swap_1"
Ensuite exécutez sudo update-grub
et testez en exécutant sudo systemctl hibernate
Pour activer l'hibernation dans 20.04 :
Tous les exemples sur cette page semblent manquer de resume-offset
, il est nécessaire lorsque vous utilisez un fichier d'échange (swapfile) plutôt qu'une partition d'échange (swap partition).
Augmentez la taille du swapfile
pour correspondre à la taille de la RAM jusqu'à 8 Go.
-
Vérifiez les fichiers d'échange utilisés :
sudo swapon -s
-
Si des partitions d'échange sont trouvées :
sudo swapoff -a sudo nano -Bw /etc/fstab
-
Ajoutez
#
avant l'UUID
des partitions d'échange :# UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX none swap sw 0 0
-
Ajoutez une ligne pour le
swapfile
, s'il n'existe pas :/swapfile none swap sw 0 0
-
Créez le
swapfile
:sudo fallocate -l XG /swapfile*
où
X
est la taille duswapfile
en Go :sudo mkswap /swapfile sudo chmod 0600 /swapfile sudo swapon /swapfile
-
Redémarrez :
sudo reboot
Ajoutez l'emplacement et l'offset du resume
à grub.cfg
:
-
Modifiez
/etc/default/grub
:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX resume_offset=XXXXX"
-
Utilisez l'
UUID
de la racine. -
Utilisez l'offset à partir de :
sudo filefrag -v /swapfile |grep " 0:"| awk '{print $4}'
-
Mettez à jour GRUB :
sudo update-grub
-
Testez l'hibernation :
sudo systemctl hibernate
Un bouton d'hibernation peut être ajouté en utilisant des extensions GNOME.
Notez qu'il y a une légère possibilité de voir des trous dans un swapfile
lors de sa création avec fallocate
. /var/log/syslog
peut être consulté pour rechercher la phrase swapon: swapfile has holes
pour garantir qu'il n'y aura pas de perte de données.
Un fichier d'échange peut également être créé en utilisant dd
:
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
Une erreur lors de l'utilisation de dd
peut écraser votre disque dur.
- Réponses précédentes
- Plus de réponses