Desktop erwacht zufällig aus dem Suspend (14.04)

9

Mein Desktop wacht von selbst aus dem Suspend auf. Manchmal dauert es nur ein oder zwei Minuten, manchmal Stunden.

Ich weiß nicht, wo ich mit der Fehlerbehebung beginnen soll. Jede Hilfe wäre sehr dankbar.

Twex
quelle
1
Ist es an ein Ethernet-Kabel angeschlossen? Nehmen Sie vielleicht das Kabel heraus und prüfen Sie, ob es noch schläft.
Jos
Stimmen Sie Jos zu. 2 Weitere Fragen: Haben Sie Wake On Lan oder Wake On Keyboard in Ihrem BIOS aktiviert?
Rinzwind
Die Antwort scheint auch für andere Versionen von Ubuntu zu funktionieren.
Kaveh

Antworten:

13

Der Rat von Jos und Rinzwind gab mir einen Anfang, konnte das Problem jedoch nicht beheben. Ich habe weder ein Ethernet-Kabel angeschlossen noch WOL (dies war im BIOS nicht als Option vorhanden) oder Wake On Keyboard aktiviert.

Ich habe versucht, die Maus, ein Logitech Wireless mit USB-Empfänger, vom Stromnetz zu trennen, bevor ich den Computer über Nacht in den Suspend-Modus versetzte - kein Aufwecken!

Warum habe ich vorher nicht daran gedacht? Ich schalte meine Maus immer aus, wenn ich den PC anhalte. Ich hätte nicht gedacht, dass es weitere Probleme verursachen würde.

Wie kann man also verhindern, dass die Maus / der Empfänger Weckrufe verursacht? Führen Sie zuerst den Befehl aus cat /proc/acpi/wakeup. Dadurch werden Geräte aufgelistet, die ein Aufwecken verursachen können.

$ cat /proc/acpi/wakeup 
Device  S-state     Status      Sysfs node
P0P1    S4          *disabled   pci:0000:00:1e.0
USB1    S3          *disabled
USB2    S3          *disabled
USB3    S3          *disabled
USB4    S3          *disabled
USB5    S3          *disabled
USB6    S3          *disabled
USB7    S3          *disabled
RP01    S4          *disabled   pci:0000:00:1c.0
PXSX    S4          *disabled   pci:0000:01:00.0
RP02    S4          *disabled
PXSX    S4          *disabled
RP03    S4          *disabled
PXSX    S4          *disabled
RP04    S4          *disabled
PXSX    S4          *disabled
RP05    S4          *disabled   pci:0000:00:1c.4
PXSX    S4          *enabled    pci:0000:02:00.0
RP06    S4          *disabled
PXSX    S4          *disabled
RP07    S4          *disabled
PXSX    S4          *disabled
RP08    S4          *disabled
PXSX    S4          *disabled
PEG0    S4          *disabled
PEGP    S4          *disabled
PEG1    S4          *disabled
PEG2    S4          *disabled
PEG3    S4          *disabled
GLAN    S4          *disabled
EHC1    S4          *enabled    pci:0000:00:1d.0
EHC2    S4          *enabled    pci:0000:00:1a.0
XHC     S4          *enabled    pci:0000:00:14.0
HDEF    S4          *disabled   pci:0000:00:1b.0
PWRB    S3          *enabled 

Im Feld können StatusSie sehen, ob sie den Computer aufwecken können ( enabled) oder nicht ( disabled).

EHC1, EHC2Und XHCUSB - Controller darstellen. Natürlich USB1 - USB7auch, aber in meinem Fall sind sie alle behindert. Ich kann nicht auf Einzelheiten eingehen, weil ich nicht viel darüber weiß.

Ich würde denken, dass PWRB(letzte Zeile) den Netzschalter darstellt. Es wäre eine gute Idee, es aktiviert zu lassen, da Sie Ihren Computer wahrscheinlich mit dem Netzschalter aufwecken möchten.

Mit dem Befehl sudo sh -c "echo EHC1 > /proc/acpi/wakeup"schalten Sie die Einstellung für um EHC1. Wenn Sie den Befehl ausführen, um die Geräte erneut aufzulisten, werden Sie feststellen, dass sich die Einstellung für EHC1geändert hat.

Ich habe dies mit den Controllern EHC1versucht EHC2, XHCda ich nicht weiß, welcher Controller welches USB-Gerät steuert.

Für mich ergibt das Verlassen EHC1und XHCAktivieren und Deaktivieren EHC2das gewünschte Ergebnis. Jetzt können weder die Tastatur noch die Maus (auch wenn sie eingeschaltet sind) ein Aufwecken verursachen. Ich muss den physischen Netzschalter am Computer selbst drücken.

Leider wird die Einstellung beim Neustart zurückgesetzt. Um dem entgegenzuwirken, können Sie den folgenden Code in Ihre /etc/rc.local. Es muss mit erhöhten Berechtigungen bearbeitet werden: sudo gedit /etc/rc.localzum Beispiel.

for device in EHC2
do
    if grep -q "$device.*enabled" /proc/acpi/wakeup
    then
        echo $device > /proc/acpi/wakeup
    fi
done

Sie können weitere Geräte hinzufügen, indem Sie die erste Zeile im Code ändern: for device in EHC1 EHC2 XHC USB1und so weiter. Ich habe das Skript gefunden, das vom Benutzer toojays geschrieben wurde .

Dies löste mein Problem.

Twex
quelle
Kann bestätigen, dass dies immer noch unter Ubuntu 16.04 passiert. Das Herausziehen des USB-Empfängers hat geholfen! Ich werde die programmatische Lösung später überprüfen.
Onebree
Das Deaktivieren von XHC löst das Problem meines Ubuntu 16.04
HD189733b