Comment mon ordinateur suspend-il?

Essayer de comprendre comment fonctionne la suspension dans 10.10.

http://git.webconverger.org/?p=home.git;a=blob;f=.bashrc;h=8ba57b877e31a03c5f0b1675b42f747d81dd31ad;hb=HEAD#l31

J’utilise un alias suspend='sudo /etc/acpi/sleep.sh && sudo alsactl init 0

Le bit alsactl est de ré-initialiser ma carte son qui parfois ne sort pas de suspendre correctement.

Et alors:

/etc/acpi/sleep.sh -> /usr/sbin/pm-suspend -> /usr/lib/pm-utils/bin/pm-action -> /usr/lib/pm-utils/pm-functions

Irony est que /usr/lib/pm-utils/bin/pm-action prétend être “un script de suspension simple”.

Je ne sais toujours pas comment ça marche. Je pense que j’ai directement utilisé s2ram avant.

L’outil gnome-power-manager écoute les événements de bouton de suspension et génère pm-suspend . Vous trouverez des informations détaillées sur le fonctionnement de pm-suspend dans la sortie de la commande man pm-suspend . La version rapide:

  1. /etc/pm/config.d est analysé pour les fichiers qui définissent les variables d’environnement.
  2. Chacun des scripts dans /etc/pm/sleep.d et /usr/lib/pm-utils/sleep.d est appelé dans l’ordre avec l’argument “suspend”.
  3. Le système est mis en veille via le module d’interface défini. Par défaut, il s’agit de l’interface de suspension du kernel: echo -n "mem" >/sys/power/state . Voir /usr/lib/pm-utils/pm-functionsdo_suspend est défini.
  4. Le système se réveille.
  5. Chacun des scripts dans /etc/pm/sleep.d et /usr/lib/pm-utils/sleep.d est appelé dans l’ordre inverse avec l’argument “resume”.

Si vous devez append un script à la stack, je vous suggère de l’append à /etc/pm/sleep.d et nommez-le de manière à ne pas entrer en conflit avec d’autres scripts, et assurez-vous qu’il traite “suspendre” / “reprendre” argument.

Pour le débogage, voir /var/log/pm-suspend.log ainsi que la page de manuel contenant des informations supplémentaires sur la procédure de test.