Ändern Sie das Verhalten des Linux-Netzschalters

29

Ich habe einen kopflosen Linux Mint-Rechner, den ich für einen Dateiserver und andere Dinge verwende. Es funktioniert für mich seit ein paar Jahren großartig, aber es gibt ein Problem: Meine Katze hängt gerne drauf herum und wenn sie absteigt und ansteigt, tritt sie gelegentlich auf den Ein- / Ausschalter und schaltet die Maschine aus.

Gibt es eine einfache Möglichkeit, das Verhalten des Netzschalters zu ändern, sodass ein extrem langer Druck (ca. 10 Sekunden) oder mehrere Druckvorgänge erforderlich sind, um etwas zu tun?

Schizodactyl
quelle
Ist das ein Desktop oder ein Laptop? Ich vermute Laptop, wenn diese Katze Zugang zum Netzschalter hat.
Terdon
3
Es ist ein Desktop - ist dies tatsächlich für eine Softwarelösung relevant?
Schizodactyl
Heh. Ich habe nicht nur das gleiche Problem, sondern auch genau den gleichen Grund. Bei @ terdon handelt es sich um einen Desktop, aber der Netzschalter befindet sich oben auf der Vorderseite und zeigt nach oben. Es ist genau der richtige Ort, an dem eine Katze eine Pfote anziehen kann, wenn sie von der Oberseite des Gehäuses springt.
Sam Hanes
2
Wenn Sie eine Reset-Taste haben, ist diese oft kleiner und schwerer zu drücken. In diesem Fall können Sie es als Ein- / Ausschalter verkabeln und den eigentlichen Ein- / Ausschalter abziehen. So gehe ich mit Problemen mit dem Netzschalter um, die mit meiner Katze zu tun haben :)
Roger Dahl
1
Dasselbe Problem, aber meine Kinder haben versehentlich den
Ein- / Ausschalter

Antworten:

17

Nun, eine Sache, die Sie tun könnten, ist einfach den Ein- / Ausschalter ganz auszuschalten. Ich persönlich benutze es nur, um mein Gerät einzuschalten, und benutze es niemals, wenn das Gerät eingeschaltet ist. Wenn dies für Sie eine OK-Lösung ist, bearbeiten Sie /etc/acpi/events/powerbtn-acpi-support:

sudo nano /etc/acpi/events/powerbtn-acpi-support

Diese Datei sollte ungefähr so ​​aussehen:

event=button[ /]power
action=/etc/acpi/powerbtn-acpi-support.sh

Ändern Sie den Ein- / Ausschalter in:

event=button[ /]power
action=

Starten Sie dann den acpiDaemon mit neu

sudo service acpid restart

Ihr Netzschalter sollte nicht ignoriert werden.

terdon
quelle
Es ist mir nicht wirklich angenehm, den Knopf vollständig zu deaktivieren, da es sich um eine kopflose Maschine handelt, wenn sshd abstürzt oder etwas in dieser Richtung, wäre mein einziger Rückgriff, die Stromversorgung der Maschine abzuschalten. Ich lasse mich lieber noch mit der Fähigkeit abschließen, wenn es möglich ist.
Schizodactyl
1
@schizodactyl auf meinem Laptop, die Lösung oben deaktiviert nur das einmalige Drücken des Netzschalters. Ein langes Drücken schaltet die Maschine immer noch aus (wenn auch nicht sehr elegant). Im Moment habe ich keinen Zugriff auf einen Desktop, daher kann ich nicht testen, wie es funktionieren würde, aber vermutlich wird es dasselbe tun. Sie können dem Befehl shutdown auch eine Verknüpfung zuordnen, wenn Sie eine Tastatur angeschlossen haben.
Terdon
2
Vielen Dank! Mein Kätzchen hat meinen Computer ausgeschaltet! :)
Geradlus_RU
34

Die Antwort von terdon ist in den meisten Fällen richtig, aber für Distributionen, die es übernommen systemd-logindhaben, werden Energieereignisse statt behandelt acpid. Fügen Sie auf diesen Distributionen diese Einstellung hinzu oder bearbeiten Sie sie /etc/systemd/logind.conf, um den Netzschalter zu deaktivieren:

HandlePowerKey=ignore

Um die neue Einstellung zu übernehmen, starten Sie logind mit neu

sudo systemctl restart systemd-logind

Bei einigen älteren Distributionen kann logind nicht neu gestartet werden, während eine Desktopsitzung aktiv ist. In diesem Fall müssen Sie einen Neustart durchführen, um die neue Einstellung zu übernehmen.

Sam Hanes
quelle
3
Es sieht so aus, als ob es die funktionierende Lösung für Ubuntu 14.04 ist, wenn Sie Gnome nicht verwenden (i3wm in meinem Fall).
Grzegorz
Ich musste auch PowerKeyIgnoreInhibited=yesdas Power-Handling meiner DE (Gnome-Einstellungen) einstellen oder ausschalten. Beide Lösungen haben dazu beigetragen, dass Gnome den Ein- / Ausschalter ebenfalls ignorierte.
Berkes
Dies war eine Wohltat für mein MacBook Air, auf dem Debian Stretch läuft. Der Ein- / Ausschalter befindet sich viel zu nahe an der Rücktaste.
Chad Schouggins
Es ist eigentlich beides. Das ACPI-System funktioniert weiterhin, überlässt jedoch die Kontrolle, logindwenn es erkannt wird. Das macht diese Lösung tatsächlich besser, da Sie bei einem logindAusfall wahrscheinlich den Netzschalter standardmäßig ordnungsgemäß herunterfahren möchten.
Walf
11

Klebeband einen Pappschutz über den Knopf. Nehmen Sie drei Stücke Wellpappe und schneiden Sie ein Loch in jedes, das groß genug ist, damit Ihr Finger bis zum Knopf reicht. Kleben Sie sie zusammen, wobei das Loch ausgerichtet ist, und kleben Sie dann die Baugruppe um den Knopf. Alle gratulieren unseren Katzenoberhäuptern!

K7AAY
quelle
3
Siehe: Molly-guard
jwygralak67
3
Da dies zu
Recht
1
web.archive.org/web/20160429084659/http://www.retrologic.com/… ist der neue Link zu Molly-guard, da der ursprüngliche Link fehlgeschlagen ist.
K7AAY,
1

Zuerst können Sie Ihre Keymap-Datei bearbeiten, um das Verhalten des Netzschalters zu ändern und sie einem anderen Schlüssel zuzuweisen

Bearbeiten Sie die Datei: /usr/share/X11/xkb/symbols/inet(POWR-Schlüssel bearbeiten)

Dann müssen Sie den Netzschalter effizient deaktivieren, eine gute Methode ist mit xinput

RUN xinput --listPOWER-Tasten haben einen eigenen Eintrag ... Wählen Sie die Gerätenummer und starten Sie dann

xinput disable devnumber so etwas wie xinput disable 8

intika
quelle