Dans la gestion de l'alimentation, j'ai sélectionné l'option "Suspendre quand je ferme le couvercle". Si je ferme le couvercle, l'ordinateur n'est pas suspendu. Il se maintient. Comment puis-je résoudre ce problème?
Cela se produit généralement lorsque certains processus empêchent le système d'être suspendu.
Faire
dmesg -T|grep Freez -A4
et recherchez ces entrées:
--
[Sun mar 3 15:19:48 2013] Freezing user space processes ...
[Sun mar 3 15:20:08 2013] Freezing of tasks failed after 20.01 seconds (3 tasks refusing to freeze, wq_busy=0):
[Sun mar 3 15:20:08 2013] mount.nfs D e8631aa0 0 5518 5517 0x00800004
[Sun mar 3 15:20:08 2013] e8631b10 00000086 f7bc0e00 e8631aa0 c1053cb4 c1809020 c192ee00 c192ee00
--
Vérifiez les horodatages pour savoir lequel des problèmes signalés se rapporte à votre tentative de suspension. Dans ce cas, c’est mount.nfs
qui est à l’origine des problèmes.
Maintenant, mettez un script dans /etc/pm/sleep.d/
, les scripts seront exécutés à la suspension et à la reprise. Le nom du fichier doit commencer par un numéro de commande, 00-49 pour les scripts utilisateur (pour plus de détails, voir man pm-suspend
).
Le script pourrait ressembler à ceci
#!/bin/sh
(killall -1 mount.nfs; exit 0)
avec des entrées correspondantes pour d'autres processus qui ont causé des problèmes, le cas échéant.
Les parenthèses et exit 0
est une astuce: si le processus n’est pas trouvé, killall
se fermera avec le code de sortie 1, ce qui annulera la suspension complète. Ce qui précède exécutera killall
dans un sous-shell qui se terminera par 0.
Si vous rencontrez des problèmes, vérifiez /var/log/pm-suspend.log
qui enregistrera la tentative de suspension et l'exécution de votre script.
L’ordinateur suspend-il lorsque vous choisissez l’option Suspendre au lieu de fermer le couvercle?
Vérifiez les journaux de suspension à /var/log/pm-suspend.log
cela pourrait vous dire pourquoi il ne suspend pas.