web-dev-qa-db-fra.com

Comment puis-je désactiver complètement Hibernate dans Kubuntu?

J'ai vu la réponse sur Comment désactiver l'hibernation? , mais je n'ai aucun fichier de ce type. Peut-être parce que cette suggestion a été écrite pour Ubuntu, pas Kubuntu (KDE, pas Gnome).

Je n'ai pas d'échange sur mon disque SSD crypté, mon système se bloque (je ne peux même pas changer le verrouillage des majuscules) si j'appuie accidentellement sur le bouton "Veille prolongée" à " Gestion de l'énergie". Mon clavier comporte un bouton de veille prolongée (Fn + F4) à côté des boutons de contrôle du volume et chaque fois que j'appuie sur la mauvaise touche, le système se bloque après.

Alors, quelle est la bonne façon de le désactiver? S'il n'y a pas de solution, une solution de rechange est également la bienvenue.

11
Lekensteyn

Déclencheurs pour l'hibernation:

  • Appuyez sur le bouton Hibernate dans Kickoff -> Quitter -> Hibernate
  • Appuyez sur Veille prolongée sur l'icône Énergie dans la barre d'état système.
  • Envoyer un signal dbus: qdbus org.kde.kded /modules/powerdevil suspend 4

Lorsque l'hibernation est déclenchée, il s'agit du flux d'exécution:

  1. /usr/lib/hal/scripts/linux/hal-system-power-hibernate-linux s'appelle
  2. /usr/sbin/pm-hibernate est appelé avec quelques arguments
  3. La journalisation commence à /var/log/pm-suspend.log
  4. Les crochets sont exécutés pour se préparer à l'hibernation. Ces hooks sont situés à /usr/lib/pm-utils/sleep.d/ et /etc/pm/sleep.d, et triés par nom (les premiers nombres)
  5. performing hibernate est écrit dans le journal
  6. La fonction shell do_hibernate est appelée pour indiquer au système de mettre en veille prolongée.
  7. Lorsque le système reprend, des points d'ancrage sont exécutés pour restaurer depuis l'hibernation.
  8. Le système est à nouveau en marche

Pour désactiver l'hibernation, créez /etc/pm/sleep.d/000no-hibernation avec le contenu suivant:

#!/bin/sh
# prevents hibernation
. "$PM_FUNCTIONS"
[ "$1" = "hibernate" ] && inhibit || true

Comme 000no-hibernation est appelé avant des scripts tels que 00logging (modules de sortie et informations de mémoire dans le journal), aucune application ni aucun module ne sont interrompus ni déchargés. Ce nom a été inspiré par /usr/lib/pm-utils/sleep.d/000kernel-change. Faites attention à bogue n ° 665651 , ce qui fait que les valeurs de retour non nulles des points d'ancrage ne peuvent pas annuler la suspension ou l'hibernation.

Cela corrige le problème d'hibernation pour moi. Bien que l'écran soit verrouillé, je peux vivre avec cela. C'est beaucoup mieux comparé à un système en panne.

6
Lekensteyn