Parfois, quand on met un ordi sous Linux-Ubuntu en veille, il se réveille tout de suite après.
C’est vachement chiant et seul un reboot permet d’arrêter ça.
La cause de ça c’est qu’il y a un périphérique, ou un contrôleur de périphérique qui réveille le système.
Pour voir tout ce qui peut réveiller un ordinateur en veille, faites ça :
cat /proc/acpi/wakeup
Ça vous liste tous les éléments qui peuvent réveiller le PC : là où c’est écrit "enabled", c’est qu’il y aura un réveil, et "disabled" c’est ce qui ne peut pas réveiller l’ordi.
Par exemple les éléments "RLAN" et "GLAN" doivent correspondre au réseau (WakeOnLan).
La ligne "PWRB" c’est « Power button » : le bouton de mise sous tension : ce dernier, quand pressé, sort l’ordi de veille.
"LSPB" c’est le bouton de veille. "LID0", je crois que c’est le fait d’ouvrir l’ordinateur portable (redresser l’écran rabattu).
Dans mon cas, je constatait que si j’avais utilisé un disque dur externe en USB3 durant la journée, la mise en veille était impossible après, même en ayant retiré le disque dur externe.
La cause étaient les éléments EHC0, EHC1 (pour l’USB2) et XHC (pour l’USB3).
Pour retirer le droit de réveiller l’ordinateur à ces éléments, je met en root (su root)et fais :
echo "EHC1" > /proc/acpi/wakeup
echo "EHC2" > /proc/acpi/wakeup
echo "XHC" > /proc/acpi/wakeup
Maintenant, en faisant la première commande, les lignes EHC0, EHC1 et XHC sont à "disabled" et la mise en veille est possible.