Gnome3

如何將電源按鈕設置為關機而不是掛起?

  • January 20, 2021

我在戴爾 E6530 筆記型電腦上的*Arch Linux 4.2.5-1-ARCH x86_64上使用**GNOME 3.18.1 。*自從我幾年前安裝了這個作業系統以來,我筆記型電腦上的電源按鈕總是導致我的作業系統完全關機。

然而,在過去的幾周里,這種行為發生了變化,所以現在按下電源按鈕會使我的筆記型電腦進入節能模式。我沒有更改電源設置。但是,我總是使用 更新我的系統pacman -Syyu,因此我懷疑更新更改了此功能。

在電源設置中沒有此選項。

如何恢復初始行為,以便按下該按鈕關閉系統電源?

這是由最新gnome-settings-daemon更新引起的……電源設置

中沒有這樣的選項,因為它已被 GNOME 開發人員刪除(該操作被認為“破壞性太大”)。 底線:您不能通過按下電源關閉按鈕來關閉筆記型電腦的電源。shutdown/power off


但是,如果您願意修補和重建,您可以向設置守護程序電源外掛添加一個新的dconf/gsettings選項(即) :shutdown``gnome-settings-daemon

--- gnome-settings-daemon-3.18.2/data/gsd-enums.h   2015-11-10 09:07:12.000000000 -0500
+++ gnome-settings-daemon-3.18.2/data/gsd-enums.h   2015-11-11 18:43:43.240794875 -0500
@@ -114,7 +114,8 @@
{
  GSD_POWER_BUTTON_ACTION_NOTHING,
  GSD_POWER_BUTTON_ACTION_SUSPEND,
-  GSD_POWER_BUTTON_ACTION_HIBERNATE
+  GSD_POWER_BUTTON_ACTION_HIBERNATE,
+  GSD_POWER_BUTTON_ACTION_SHUTDOWN
} GsdPowerButtonActionType;

typedef enum
--- gnome-settings-daemon-3.18.2/plugins/media-keys/gsd-media-keys-manager.c    2015-11-10 09:07:12.000000000 -0500
+++ gnome-settings-daemon-3.18.2/plugins/media-keys/gsd-media-keys-manager.c    2015-11-11 18:47:52.388602012 -0500
@@ -1849,6 +1849,9 @@

        action_type = g_settings_get_enum (manager->priv->power_settings, "power-button-action");
        switch (action_type) {
+        case GSD_POWER_BUTTON_ACTION_SHUTDOWN:
+                do_config_power_action (manager, GSD_POWER_ACTION_SHUTDOWN, in_lock_screen);
+                break;
        case GSD_POWER_BUTTON_ACTION_SUSPEND:
                do_config_power_action (manager, GSD_POWER_ACTION_SUSPEND, in_lock_screen);
                break;

安裝更新檔版本後,org > gnome > settings-daemon > plugins > power > power-button-actionshutdown將提供一個新選項:dconf-editor

在此處輸入圖像描述

因此選擇通過電源按鈕關閉,或者,如果您更喜歡 CLI,請在終端中執行:

gsettings set org.gnome.settings-daemon.plugins.power power-button-action shutdown

當然,要使上述方法正常工作,您還需要以下正確設置/etc/systemd/logind.conf

HandlePowerKey=poweroff
PowerKeyIgnoreInhibited=yes

請記住,按下電源按鈕將在沒有任何警告的情況下關閉您的系統。

引用自:https://unix.stackexchange.com/questions/242129