Dans Ubuntu 12.04 et plus récente, la veille prolongée a été désactivée par défaut dans policykit . Comment puis-je activer ce retour?
Si cette réponse ne fonctionne pas dans Ubuntu 13.10, voir ici pour une réponse alternative
Vous pouvez suivre la documentation officielle ici . L'hibernation était désactivée le 12.04 pour les machines non certifiées avec Ubuntu.
Afin d'activer l'hibernation, vous devez vérifier son fonctionnement correct en exécutant Sudo pm-hibernate
dans un terminal. Le système va essayer d'hiberner. Si vous êtes en mesure de redémarrer le système, vous êtes plus ou moins sûr d’ajouter une substitution.
Pour ce faire, commencez à éditer:
Sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Remplissez-le avec ceci:
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
Ou à partir de 14.04:
[Re-enable hibernate by default for login1]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes
[Re-enable hibernate for multiple users by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes
Enregistrer en appuyant sur Ctrl-O puis enter puis quittez nano en appuyant sur Ctrl-X.
Redémarrez et l'hibernation est de retour!
Ou exécutez killall unity-panel-service
pour simplement réinitialiser le menu.
Certains utilisateurs devront ensuite exécuter Sudo update-grub
pour que l'option de veille prolongée soit disponible dans le menu d'alimentation. Certains utilisateurs devront peut-être au moins se déconnecter puis se connecter pour le faire apparaître dans le menu d'alimentation (en haut à droite).
Tout d'abord, vous devez tester votre machine prend en charge l'hibernation. Testez-le avec la commande:
Sudo pm-hibernate
# or for newer Ubuntus like 17.04
Sudo systemctl hibernate
Pour l'activer dans l'interface, vous devez exécuter Sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
et remplir avec:
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes
Pour l'activer dans l'interface, vous devez exécuter Sudo nano /etc/polkit-1/localauthority.conf.d/52-enable-hibernation.conf
pour Ubuntu 14.04 et 15.04 et remplir avec:
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Re-enable hibernate by default for login1]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes
Il a plusieurs strophes car vous pouvez avoir plusieurs utilisateurs (donc cela ne dépend pas de plusieurs utilisateurs ou de l’auteur en tant que manager au lieu de login1)
p.s .: derniers documents officiels https://help.ubuntu.com/stable/ubuntu-help/power-hibernate.html
De plus, pour ceux qui souhaitent désactiver le bouton de suspension (pour diverses raisons), procédez de manière analogue ...
Choisissez n'importe quel nom de fichier, mais celui-ci est verbose/convention:
sudoedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla
Remplissez-le avec ceci:
[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
Ctrl+O, Enter, Ctrl+X
Pas besoin de redémarrer, il devrait être parti dès que vous entrez dans le menu d'arrêt.
Une dernière chose:
Lorsque vous souhaitez ajouter l'option d'hibernation au panneau de XFCE, vous devez cliquer avec le bouton droit sur votre nom (topright) et sélectionner properties
name__.
Après cela, un écran apparaît:
Assurez-vous de vérifier Hibernate comme je l'ai fait.
Tout d'abord, je vous recommande de vérifier si votre ordinateur portable prend en charge le mode veille prolongée, car si le mode veille prolongée est désactivé par défaut, c'est parce que les résultats sont parfois fatals sur certaines machines. Testez votre machine en
Ctrl+Alt+T puis Sudo pm-hibernate
Votre machine devrait hiberner. Réveillez votre machine après l'hibernation et observez si elle se comporte mal ou si elle agit normalement. Si vous rencontrez une anomalie après l'hibernation, je vous conseille donc de ne pas poursuivre la procédure suivante. Toutefois, si cela fonctionne très bien, continuez à activer le mode veille prolongée en
Sudo gedit /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Editez le fichier ouvert et ajoutez ces lignes:
[Re-enable hibernation]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
Après cela, redémarrez votre ordinateur et, lors de la connexion, une option de veille prolongée apparaît dans le coin supérieur droit des paramètres.
Si la réponse avec /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
ne fonctionne pas comme dans mon cas, n'oubliez pas de supprimer le fichier en:
Sudo rm /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Et essayez d'utiliser TuxOnIce .
Tout d’abord, assurez-vous d’avoir suffisamment d’échange. Il devrait être de la même taille ou plus grand que la quantité de RAM. Utiliser la commande
free
règle Swap> Mem. Si ce n'est pas le cas, agrandissez la taille de votre échange. Puis installez TuxOnIce en
Sudo add-apt-repository ppa:tuxonice/ppa
Sudo apt-get update
Sudo apt-get install tuxonice-userui linux-generic-tuxonice linux-headers-generic-tuxonice
Ensuite, vous pouvez essayer de faire un test de veille prolongée exécuté par:
Sudo pm-hibernate
N'oubliez pas de sauvegarder votre travail avant de le faire.
Si tout s'est bien passé, votre ordinateur s'éteindra. Après l'avoir allumé, votre ordinateur de bureau sera dans l'état que vous aviez laissé avant l'hibernation.
J'ai traduit les réponses ci-dessus aux scripts bash
. Cela rend l'installation sur plusieurs machines moins fastidieuse.
Script enable-hibernate
:
#!/bin/bash
#http://askubuntu.com/a/94963/164341
cat << '_EOF_' |Sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Enable Hibernate]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
_EOF_
clear
echo
echo 'Hibernate enabled.'
echo
Script disable-suspend
:
#!/bin/bash
#http://askubuntu.com/a/154821/164341
cat << '_EOF_' |Sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.disable-suspend.pkla
[Disable suspend by default]
Identity=unix-user:*
Action=org.freedesktop.upower.suspend
ResultActive=no
_EOF_
clear
echo
echo 'Suspend disabled.'
echo
Remarque: N'oubliez pas de chmod +x
les deux scripts pour les rendre exécutables.
Une commande simple qui fait exactement la même chose que la réponse acceptée, sauf de manière non interactive:
cat <<EOF | Sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
EOF
En 12.04, j'ai activé avec succès l'option de veille prolongée dans le menu des indicateurs pour la mise en veille prolongée. Mais je n’ai toujours pas pu reprendre mon activité d’hibernation. J'ai suivi ces étapes pour résoudre ce problème:
Pour activer Hibernate, j'ai suivi cette réponse de Dima.
Après avoir activé le mode hibernation, je pouvais hiberner. Mais le problème est, je ne peux pas reprendre avec succès de hibernation. À chaque fois que je démarre mon ordinateur à partir de la veille prolongée, il démarre comme un démarrage normal. Donc, je devais faire ces choses pour pouvoir reprendre de l'hibernation.
Il y a deux façons de résoudre ce problème.
/etc/initramfs-tools/conf.d/resume
Commencez par obtenir l'UUID de la partition de swap.
Sudo blkid | grep swap
Cela produira une ligne semblable à ceci:
/dev/sda12: UUID="a14f3380-810e-49a7-b42e-72169e66c432" TYPE="swap"
La ligne actuelle ne correspondra pas à cela. Copiez la valeur de l'UUID entre "..."
double quote.
Ouvrir le fichier de reprise
gksudo gedit /etc/initramfs-tools/conf.d/resume
Et dans ce fichier, ajoutez une ligne comme celle-ci
RESUME=UUID=a14f3380-810e-49a7-b42e-72169e66c432
N'oubliez pas de remplacer la valeur UUID actuelle obtenue à l'étape 1. Enregistrez le fichier et quittez gedit.
Puis en terminal, exécutez cette commande
Sudo update-initramfs -u
Vous pourrez maintenant reprendre depuis l'hibernation
/etc/default/grub
.Ouvrez un terminal et exécutez la commande ci-dessous pour l'ouvrir.
gksudo gedit/etc/default/grub
Il y aura une ligne comme GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
. Modifiez la ligne pour insérer RESUME=UUID=<your-uuid-value-here>
après Word splash
name__.
Par exemple, dans mon cas, la ligne ressemble à ceci après l'édition
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=a14f3380-810e-49a7-b42e-72169e66c432"
Assurez-vous que vous avez utilisé la valeur UUID obtenue à partir de la commande Sudo blkid | grep swap
.
Alors fais cette commande
Sudo update-grub
Cela vous permet également de reprendre avec succès votre veille prolongée.
Testé sur deux installations Ubuntu, les deux ont fonctionné
J'ai Ubuntu Gnome 17.04 AMD64 sur mon ordinateur portable. J'ai fait ce qui suit pour activer l'hibernation:
$ Sudo apt-get install hibernate
( source )
Ceci est également installé libx86-1
uswsusp
vbetool
Ensuite, je pourrais hiberner avec succès avec Sudo systemctl hibernate
. Il n'y a pas d'exécutable pm-hibernate
dans mon chemin.
$ Sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Inséré: ( source )
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes
[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes
Installé https://extensions.gnome.org/extension/755/hibernate-status-button/