web-dev-qa-db-fra.com

Ordinateur portable ne pas hiberner lorsque je ferme le couvercle dans Ubuntu 14.04

Ok, je sais qu'il y a déjà plusieurs questions liées à cela. J'ai essayé beaucoup de solutions en vain. Je vais détailler ici ce que j'ai fait et comment sont mes fichiers de configuration dans l'espoir qu'une bonne âme me signale ce que j'ai raté.

Quelques informations initiales:

  • J'ai installé Ubuntu 14 à partir d'un 14.01 .iso et il est devenu un 14.04 parce que, je suppose, j'ai coché une option pour mettre à jour automatiquement lors de l'installation.
  • J'ai un moniteur externe connecté. Cela semble être pertinent dans certains cas.
  • Comme expliqué ici , il n’existe aucune option de mise en veille prolongée du PC dans les paramètres d’alimentation d’Ubuntu 14. Suspendez et ne faites rien.
  • pm-hibernate fonctionne bien.
  • Mon échange est légèrement plus grand que ma RAM

1. J'avais une menthe (14 si je ne me trompe pas) où fermer le couvercle ne serait pas en hibernation jusqu'à ce que je ajouté quelques scripts . Dans Ubuntu 14, il n’existe pas de /etc/acpi/lid.sh que je puisse modifier comme je l’ai fait dans Mint. J'ai essayé d'en créer un avec le contenu suivant:

echo 'ok' > ok
grep -q closed /proc/acpi/button/lid/*/state
if [ $? = 0 ]
then
    su - gabriel -c 'dconf read /org/gnome/settings-daemon/plugins/power/lid-close-ac-action' | grep hibernate
    if [ $? = 0 ]
    then
        pm-hibernate
    fi
fi

Le fichier ok n'est pas créé lorsque je ferme le couvercle, cela signifie que le script n'est jamais appelé.

J'ai essayé de déplacer lid.sh dans events/.

Comme suggéré ici , j'ai essayé de le renommer en lid.sh.post et de le déplacer en /etc/acpi/local/, ainsi que plusieurs autres combinaisons de répertoire et de noms (avec/sans .post , dans /etc/acpi/, local/, events/...)

2. J'ai fait comme indiqué ici et installé gnome-Tweak-tool, afin de pouvoir définir l'action sur le couvercle fermé à hiberner. Après cela, les menus déroulants dans le panneau de configuration/alimentation étaient vierges (ne pas suspendre ni "ne rien faire"), mais maintenant, ils indiquent "ne rien faire", je ne sais pas ce que j'ai fait pour changer cela. Et courir

su - gabriel -c 'dconf read /org/gnome/settings-daemon/plugins/power/lid-close-ac-action'

renvoie toujours 'rien', ce qui compromet mon script (probablement inutile de toute façon).

3. J'ai fait comme indiqué ici : édité /etc/systemd/logind.conf et mis HandleLidSwitch sur 'hibernate' :

cat /etc/systemd/logind.conf | grep -i lid
#HandleLidSwitch=hibernate
#LidSwitchIgnoreInhibited=yes

J'ai aussi essayé avec

#LidSwitchIgnoreInhibited=no

4. Comme expliqué ici et ici , j'ai édité /var/lib/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla:

root@gabriel-linux:/var/lib/polkit-1/localauthority/50-local.d# cat com.ubuntu.enable-hibernate.pkla 
[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
ResultActive=yes
5
Gabriel

Pour que mon script (lid.sh) soit appelé dans /etc/acpi/, je devais créer le fichier correct dans /etc/acpi/events/.

Le fichier doit s'appeler lm_lid et le contenu est le suivant:

event=button/lid.*
action=/etc/acpi/lid.sh

Redémarrez votre système pour que cela prenne effet.

Note: Je suis revenu à Linux Mint (maintenant 17) avant de comprendre tout cela, et cela, avec le fichier correct, fonctionne maintenant. J'aimerais cependant avoir des nouvelles des utilisateurs Ubuntu.

2
Gabriel

J'ai eu un problème similaire dans Linux Mint 17.3. Il est parti quand j'ai installé le pilote vidéo nvidia à la place du pilote open source par défaut. (Administration-> Gestionnaire de pilotes-> Sélectionnez le pilote recommandé par nvidia)

1
Sam G.