Deckel schließen und zum RAM anhalten: Welche Software ist beteiligt?

Deckel schließen und zum RAM anhalten: Welche Software ist beteiligt?

Um einige Zuverlässigkeitsprobleme zu beheben mitSuspend-to-Ram(beim Schließen des Laptopdeckels) möchte ich nachfragen, welche Software damit zusammenhängt. Damit ich folgende Probleme beheben kann:

  • Ob "Suspend-to-Ram" gut funktioniert, hängt vom Login-Status und TTY3 ab. Ich habe sowohl Wayland als auch Xorg und manchmal eine Konsole, die auf 1 bis 5 TTYs läuft.
  • es scheinen systemd logindeinige meiner DEs (am prominentesten Gnome3und xfce) daran beteiligt zu sein.
  • beim erneuten Öffnen des Deckels und der Wiederaufnahme vom letzten Vorgang lässt suspend-to-ramdas gdmDing kein „Suspend-to-Ram“ zu, sodass ich mich einrasten muss, bevor ich eine weitere Chance (es ist unzuverlässig) für ein „Suspend-to-Ram“ habe, was an sich schon über 5 Sekunden dauern kann (was ich daran erkennen kann, dass in diesem Moment Audio abgespielt wird; vom Schließen des Deckels bis zum Ausschalten der Musik vergehen locker 7 bis 10 Sekunden).

Ich erinnere mich (aus früherer Beschäftigung mit einem ähnlichen Thema im Zusammenhang mit Suspend-to-RAM), dass das „moderne“ Linux mit und und Gnomeanfällig systemdfür Probleme mit Suspend war, da unterschiedliche Software dazu dient, „Deckel geschlossen“ anzuzeigen und dennoch „Suspend-to-RAM zu unterdrücken“.loginkitlogind

Eine gute Antwort würde zumindest die Software auflisten, die am Suspend-to-RAM beteiligt ist. Besser wäre, sie würde auch kurz die Reihenfolge und die Rolle der verschiedenen Software skizzieren.

Vorausgesetzt, dass es von der initund Desktop-Umgebung abhängen könnte, bin ich am meisten an Antworten interessiert, die sich auf

  • systemd
  • Debian / Ubuntu 18.04
  • Gnom 3

Eine optimale Antwort würde auch hervorheben, wie ich im besten Fall alle Software- und GUI-bezogenen Dinge deaktivieren kann. Bildbeschreibung hier eingeben

und andere „hilfreiche“ Automatismen, die für mich lediglich grundlegend sind (aber funktionieren):

root@box$ while sleep 1; do 
    grep "closed" /proc/acpi/button/lid/LID0/state && {
        systemctl suspend 
        sleep 3 
    } 
    done 

würde genügen.

Die Kerninformation, die mit dieser Frage ermittelt werden soll, lautet: Welche Software ist an der Aufgabe beteiligt, den „Deckelzustand zu prüfen“ und folglich den „Suspend-to-RAM“ durchzuführen?

Antwort1

Ok, da acpides auf Ihrem System zu laufen scheint (siehe Kommentare), ist es vermutlich diese Softwarekomponente, die die Energieverwaltung steuert.

Die Konfiguration erfolgt über /etc/acpi/. In meinem Debian habe ich beispielsweise eine /etc/acpi/events/lidbtnKonfigurationsdatei, die definiert, wie auf alle mit dem Deckel verbundenen Ereignisse reagiert werden soll.

Es beinhaltet:

# /etc/acpi/events/lidbtn
# Called when the user closes or opens the lid

event=button[ /]lid
action=/etc/acpi/lid.sh

Dann möchte ich einige Aktionen hinzufügen, die beim Schließen des Deckels ausgeführt werden sollen. Ich muss sie nur an der richtigen Stelle der /etc/acpi/lid.shShell hinzufügen. Es gibt viele Umgebungsvariablen, acpiddie beim Erkennen des Ereignistyps helfen können.

Weitere Einzelheiten finden Sie auf der Manpage von acpid.

verwandte Informationen