Nicht einschlafen
Ich habe einen alten Laptop als Spielserver aufgesetzt.
Leider geht selbiger in den Standby-Modus sobald man den Deckel/Bildschirm schließt.
Eigentlich hatte ich erwartet das auf dem System ein acpid läuft der auf die APCI-Ereignisse reagiert - so war das jedenfalls als ich "jung" war ;)
Ich musste aber feststellen das das nicht der Fall ist. Worauf mich gleich das Gefühl beschlich das man den bestimmt durch irgendein systemd-Etwas ersetzt hat - heute ist schließlich alles systemd.
Und tatsächlich macht es ein systemd-Dienst - systemd-logind - ist ja auch naheliegend, er reagiert auf acpi-Events, also heißt er systemd-ac… ohh wait…
Egal, die Lösung ist recht einfach:
[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#InhibitDelayMaxSec=5
#UserStopDelaySec=10
#HandlePowerKey=poweroff
#HandlePowerKeyLongPress=ignore
#HandleRebootKey=reboot
#HandleRebootKeyLongPress=poweroff
#HandleSuspendKey=suspend
#HandleSuspendKeyLongPress=hibernate
#HandleHibernateKey=hibernate
#HandleHibernateKeyLongPress=ignore
#HandleLidSwitch=suspend
#HandleLidSwitchExternalPower=suspend
Man muss nur die gewünschte Einstellung einkommentieren (das # am Beginn löschen) und den Wert entsprechend ändern.
In meinem Fall ist es:
HandleLidSwitchExternalPower=ignore
Das verhindert das das Schließen des Deckels (Lid) behandelt wird wenn das Netzteil angeschlossen ist (ExternalPower).
Will man die Einstelllung per ansible (oder anderweit automatisch) ändern kann alternativ unter /etc/systemd/logind.conf.d eine Datei platziert werden.
Sie muss auf '.conf' enden.
Der Inhalt sieht folgt diesem Schema:
[Login] HandleLidSwitchExternalPower=ignore
Einstellungen hier überschreiben jene in /etc/systemd/logind.conf
Damit die Einstellungen aktiv werden muss systemd-logind.service neugestartet werden:
systemctl restart systemd-logind.service
Ein neuladen der Einstellungen (per reload-Aktion) ist nicht möglich (unterstützt der Dienst nicht).