web-dev-qa-db-fra.com

Arrêt / Suspension / Veille prolongée ne fonctionne pas correctement

J'utilise Ubuntu 11.10 et tout allait bien jusqu'à quelques jours. J'essaie de shutdown mon ordinateur portable, mais Ubuntu affiche plutôt l'écran de connexion lightgdm.

De plus, suspend et hibernate ne sont pas terminés:

  • en cas de suspension je dois redémarrer mon ordinateur portable et
  • en veille prolongée, je dois l'éteindre à l'aide du bouton d'alimentation.
6
eyadof

(commentaire du problème résolu de OP)

J'ai compilé un nouveau noyau et le problème a disparu :) merci à vous tous. - eyadof 9 mars à 15h25

2
Ringtail

J'ai trouvé cela, qui semble fonctionner pour certaines personnes - mais ce n'est pas pour moi ...

http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug

gksudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd 

ou comme vous le feriez normalement lors de la création d'un fichier en tant que superutilisateur

Insérez le code suivant dans le fichier que vous venez de créer:

#!/bin/sh
#inspired by http://art.ubuntuforums.org/showpost.php?p=9744970&postcount=19
#...and http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug    
# tidied by tqzzaa :)

VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1

unbindDev() {
  echo -n > $DEV_LIST 2>/dev/null
  for driver in $DRIVERS; do
    DDIR=$DRIVERS_DIR/${driver}_hcd
    for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
      echo -n "$dev" > $DDIR/unbind
      echo "$driver $dev" >> $DEV_LIST
    done
  done
}

bindDev() {
  if [ -s $DEV_LIST ]; then
    while read driver dev; do
      DDIR=$DRIVERS_DIR/${driver}_hcd
      while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
          echo -n "$dev" > $DDIR/bind
          if [ ! -L "$DDIR/$dev" ]; then
            sleep $BIND_WAIT
          else
            break
          fi
          MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
      done  
    done < $DEV_LIST
  fi
  rm $DEV_LIST 2>/dev/null
}

case "$1" in
  hibernate|suspend) unbindDev;;
  resume|thaw)       bindDev;;
esac

les gens, ymmv, n'ont pas fonctionné pour moi. voir le lien original pour plus d'informations.

http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug

0
hwjp

Une autre possibilité - hibernate utilise votre partition d'échange, et celle-ci doit être assez grande pour contenir l'ensemble de votre RAM. J'ai 8 Go de RAM mais seulement 1 Go d'échange. Cela pourrait donc être le problème.

https://help.ubuntu.com/community/SwapFaq#Why_do_I_need_swap.3F

[edit] - Eh bien, j'ai essayé ceci, en m'assurant d'avoir suffisamment de swap 10 Go pour mes 8 Go de RAM - sans aide ...

0
hwjp