Wie kann man verhindern, dass der Netzschalter das System direkt herunterfährt?

23

Ich habe eine Neuinstallation von Ubuntu 13.10 durchgeführt. Wenn ich meinen Netzschalter drücke, fährt mein Computer sofort herunter. In Ubuntu 13.04 bekam ich ein schönes Menü, in dem ich auswählen konnte, was zu tun ist. Es ist jetzt weg und ich will es zurück. Hier ist mein /etc/acpi/powerbtn.sh Pastebin.

Ich habe es bereits getan

gsettings set org.gnome.settings-daemon.plugins.power button-WORD 'interactive'

wo WORDist hibernate, power, sleepund suspend.

Wauzl
quelle
1
Ich habe mein durchgesehen /etc/acpi/powerbtn.shund festgestellt, dass es einfach nichts bringt. Das Menü ich bin sprechen kann durch den Befehl gerufen werdengnome-session-quit --power-off
Wauzl
lulz. Ich wünschte, ich hätte Ihren Kommentar gelesen, bevor ich mich auf eine wilde Gänsejagd begeben hätte, um diesen Befehl zu finden.
Hat meine Antwort bei Ihnen nicht funktioniert?
Ich habe Ihre Antwort positiv bewertet und bin mir sicher, dass es funktioniert hätte. Ich habe mein gesamtes System neu installiert. Ich hatte auch andere Probleme. Dies hat es (eifrig) für mich behoben.
Wauzl
ah, k. Ich habe gerade gesehen, dass Sie kommentarlos auf der Website vorbeigekommen sind. Ich dachte, die Benachrichtigung ist möglicherweise verloren gegangen. seltsam, total Neuinstallation dieses Problem behoben? Hast du den letzten 13.10 runtergeladen? Ich habe eine Neuinstallation und hatte dieses Problem neu.

Antworten:

29

Überprüfen Sie Ihre /etc/systemd/logind.confDatei. Es sollte so aussehen:

[Login]
#NAutoVTs=6
#ReserveVT=6
#KillUserProcesses=no
#KillOnlyUsers=
#KillExcludeUsers=root
#Controllers=
#ResetControllers=cpu
#InhibitDelayMaxSec=5
#HandlePowerKey=poweroff
#HandleSuspendKey=suspend
#HandleHibernateKey=hibernate
#HandleLidSwitch=suspend
#PowerKeyIgnoreInhibited=no
#SuspendKeyIgnoreInhibited=no
#HibernateKeyIgnoreInhibited=no
#LidSwitchIgnoreInhibited=yes
#IdleAction=ignore
#IdleActionSec=30min

Kommentieren Sie die Zeile aus, in der steht, #HandlePowerKey=poweroffund ändern Sie den Wert in ignore.

Starten Sie dann die Anmeldung mit dem folgenden Befehl neu: sudo restart systemd-logindoder starten Sie Ihren Computer neu.

BEARBEITEN: Erstellen eines neuen ACPI-Handlers Erstellen Sie eine neue Datei in /etc/acpi/events/. Der Inhalt der Datei sollte sein:

event=<acpi_event_code>
action=<script_to_call>

Wo <acpi_event_code>ist der Code, den Sie mit dem acpi_listenTool erhalten und <script_to_call>der vollständige Pfad zu dem Skript, das Sie aufrufen möchten, wenn dieses Ereignis eintritt?

Sie müssen etwas in 13.10 geändert haben, da es den Anschein hat, dass ich im Vergleich zu 13.04 zu wenige Dateien in meinem Ordner / etc / accpi / events habe.

jeremija
quelle
Dies bringt meine geliebte Speisekarte nicht zurück. Es macht einfach nichts, wenn ich jetzt den Ein- / Ausschalter drücke.
Wauzl
Wenn die Datei powerbtn.sh tatsächlich ausgeführt wird, während der Netzschalter gedrückt wird, können Sie versuchen, den Befehl shutdown menu auszuführen, wenn der X-Server ausgeführt wird und gnome Ihre Desktop-Umgebung ist. Sehen Sie sich die Ausgabe des exportBefehls an, um festzustellen, welche Variablen getestet werden sollen. Wenn das Skript powerbtn.sh überhaupt nicht ausgeführt wird, können Sie versuchen, herauszufinden, an welches acpi-Ereignis Sie binden möchten, indem Sie den Ein- / Ausschalter ausführen acpi_listenund drücken. Vielleicht gibt es auch eine Option in gnome, um das Power-Menü wieder aufzurufen, aber ich bin mir nicht sicher, da es schon eine Weile her ist, seit ich gnome das letzte Mal benutzt habe.
Jeremija
Ich habe das ausprobiert und das powerbtn.shwird (wahrscheinlich) nicht ausgeführt, da nichts passiert, wenn ich den Knopf drücke. Das acpi_listensagt mir, dass die Schaltfläche ein ACPI-Ereignis auslöst. Leider funktionieren auch meine Lauter- und Leiser-Tasten nicht. Vielleicht hängt das zusammen?
Wauzl
Sie könnten Folgendes versuchen: grep "<acpi_event_code>" /etc/acpi/events/*Wo <acpi_event_code>ist der Code des acpi-Ereignisses, das Sie auf acpi_listen gesehen haben? Wenn Sie ein Ergebnis erhalten, zeigen Sie diese Datei an und sehen Sie den Namen des aufgerufenen Skripts. Wenn Sie kein Ergebnis erhalten, können Sie versuchen, eine neue Datei in die /etc/acpi/events/. Weitere Informationen finden Sie in der bearbeiteten Antwort.
Jeremija
Stellen Sie sicher, dass dies mit 16.04 LTS auf meinem Mac funktioniert.
Benjamin R
4

jeremijah hat mich auf den richtigen Weg gebracht, also ein dickes Lob!

Ich bearbeiten , /etc/systemd/logind.confwie empfohlen, aber ich habe auch diese .

Gemeinschaft
quelle
1

Wenn die oben genannten Lösungen für Sie nicht funktionieren, können Sie Folgendes schnell umgehen:

  • Installieren Sie xtrlock

Dieses Dienstprogramm erledigt die Arbeit für Sie. Auch wenn dies die Frage möglicherweise nicht beantwortet, scheint in den vielen Lösungen, die ich ausprobiert habe (einschließlich der auf dieser Seite), keine zu funktionieren

Installieren:

sudo apt install xtrlock 

Verwendung: Geben Sie xtrlockdie Befehlszeile ein. Dadurch werden Maus und Tastatur eingefroren

Zum Entsperren geben Sie Ihr Passwort ein und drücken Sie die [Eingabetaste]


Es kann auch Ihren Netzschalter einfrieren.

PS Diese Lösung ist besonders nützlich für Personen, die Kinder haben und den Ein- / Ausschalter aus diesem Grund deaktivieren möchten.

xtrlock - Sperrt die X-Anzeige, bis das Kennwort eingegeben wurde, und lässt Windows sichtbar. Quelle: http://manpages.ubuntu.com/manpages/artful/man1/xtrlock.1x.html

Dody Körper
quelle
Bitte erweitern Sie Ihre Antwort. Ist diese App in den Repositories verfügbar? Wie haben Sie es über die Befehlszeile oder über das Ubuntu Software Center installiert? Welchen Befehl haben Sie über die Befehlszeile verwendet? Hast du es so konfiguriert, wie?
User68186
1

Zuerst können Sie Ihre Keymap-Datei bearbeiten, um das Verhalten des Ein- / Ausschalters zu ändern und sie einer anderen Taste 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