Güç düğmesi askıya almak yerine kapanmaya nasıl ayarlanır?


17

Ben kullanıyorum GNOME açıklamalar 3.18.1 üzerinde Arch Linux 4.2.5-1-MİM x86_64 Dell E6530 dizüstü. Bu işletim sistemini yıllar önce kurduğumdan beri, dizüstü bilgisayarımdaki güç düğmesi her zaman işletim sistemimin tamamen kapanmasına neden oldu.

Ancak, son birkaç haftada bu davranış değişti, böylece güç düğmesine basmak dizüstü bilgisayarımı enerji tasarrufu moduna geçiriyor. Güç ayarlarımı değiştirmedim. pacman -SyyuBununla birlikte, sistemimi her zaman kullanarak güncel tutuyorum, bu nedenle bir güncellemenin bu işlevselliği değiştirdiğinden şüpheleniyorum.

Güç ayarlarında bunun için bir seçenek yoktur.

İlk davranışı nasıl geri yükleyebilirim, böylece bu düğmeye basmak sistemi kapatır?


2
@Konrad İkinci bir adım olarak, Gnome'un suçlu olduğunu doğrulamak isteyebilirsiniz. Bu bir varsayım. Mermileri değiştirmeyi denerseniz, bir şeyler öğrenebilirsiniz. Bu sorunu gidermek için attığınız adımları da listeleyebilir misiniz?
Sarah Weinberger

1
Ne değişti? Bir şey yükselttin mi? Hangi işletim sistemini (sürümler dahil) çalıştırıyorsunuz? Hangi donanımda? Çalışırken ne koşuyordunuz?
Gilles 'SO- kötü olmayı bırak'

Eksik bilgi için özür dilerim, yazımı güncelledim.
Konrad Höffner

Yanıtlar:


16

Bunun nedeni en son gnome-settings-daemongüncellemeler ... Gç ayarlarında
böyle bir seçenek yok çünkü GNOME geliştiricileri tarafından kaldırıldı ( eylem "çok yıkıcı" kabul ediliyor ). Alt satır: artık kapatma düğmesine basarak dizüstü bilgisayarınızı kapatamazsınız .shutdown/power off


Ancak , yama eklemek ve yeniden oluşturmak istiyorsanız, ayarlar arka plan programı güç eklentisine yeni bir dconf/ gsettingsseçenek (ie shutdown) ekleyebilirsiniz 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;

Yamalı sürümü yükledikten sonra, org> gnome> settings-daemon> eklentileri> güç> güç düğmesi eylemi altında yeni bir shutdownseçenek sunulacaktır :dconf-editor

resim açıklamasını buraya girin

bu yüzden güç düğmesi ile kapatmak için seçin veya CLI'yi tercih ediyorsanız, terminalde çalıştırın:

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

Elbette, yukarıdakilerin çalışması için aşağıdaki yerlerde de doğru ayarlara ihtiyacınız vardır /etc/systemd/logind.conf:

HandlePowerKey=poweroff
PowerKeyIgnoreInhibited=yes

Güç düğmesine basmanın hiçbir uyarı yapmadan sisteminizi kapatacağını unutmayın.


6
Bu çok hayal kırıklığı yaratıyor, her zaman Linux'un tehlikeli olsa bile kullanıcının ne istediğine karar verdiği işletim sistemi olduğunu düşündüm. Ama bunu bulduğunuz için çok teşekkür ederim, en azından varolmayan bir düzeltme arayışında zamanımı boşa harcamıyorum.
Konrad Höffner

Ayrıntılı çözüm için çok teşekkür ederim. Gnome-settings-daemon 3.18.2-1 olmasına rağmen, yüklememin farklı dosyaları var, ancak: gsd-enums.hklasörde /usr/include/gnome-settings-daemon-3.0/gnome-settings-daemon/ve gsd-media-keys-manager.chiç yok.
Konrad Höffner

Dev kararını tersine çevirdi ve gnome-settings-daemon 3.20'deki etkileşimli seçeneği geri yükledi . (Sanırım henüz bu sürüme güncelleme yapmadım.)
idbrii

1
@ idbrii - senin için kötü haberlerim var: 3.22'deyim ve kapatma seçeneği yok.
don_crissti

6

@Don_crissti'nin açıkladığı gibi, durum aptalca çünkü normal ayarları kullanarak onaylamadan sadece kapanmak mümkün değil.

Ancak, bir geçici çözüm vardır: Makinenin kasa türü "vm" (sanal makine) olarak ayarlanmışsa, eski anında kapatma davranışı herhangi bir ayarı devralır. Basitçe root olarak girin:

hostnamectl set-chassis vm

ve bir kez yeniden başlatın. Bu ayarların herhangi bir yan etkisi olduğunu bilmiyorum.


1
Ben uzun zamandır bu güç düğmesi sorunu izlediyseniz linke Bizim uygulama ihtiyaçları her gece teknik olmayan personel tarafından kapalı olması o mod klavyesiz / mouseless yapılandırması "sadece görünümü" vardır. Güç düğmesi ile kapatma yeteneği kaybolduğunda, sadece fişi çekmeleri gerekir. Bu çözüm bizim için harika çalışıyor ve bizim için açık ara en kolay yaklaşım.
MikeV

4

Ubuntu 18.04 veya benzer Linux'ta (muhtemelen yükleyebilirsiniz değilse), adlı bir dosya yapmak acpi ile varyantları /etc/acpi/events/powerile

sudo nano /etc/acpi/events/power

ve koy

event=button/power
action=/sbin/poweroff

dosyanın içinde kapatın, sonra

sudo service acpid restart

Bu muhtemelen kesinlikle işe yarayan en basit çözümdür.


1
Bu çözümler benim durumumda harika çalışıyor: gnome-desktop yüklü ve başsız modda ubuntu sunucusu 18.04 (bir ekran bağlandığında gerekli değildir). Teşekkürler !
M-Jack

3

Alternatif olarak, klavye ayarları penceresini açabilir ve komuta özel bir klavye kısayolu atayabilirsiniz gnome-session-quit --power-off, bu da kapatma menüsünü getirir. Super+ İle tetikleyecek şekilde ayarladım q.


2

İlk adım olarak, Ayarlar | Güç (Gnome v3 varsa) "Suspend & Power Off" / "Otomatik Suspend" kapalı olarak ayarlanmıştır. Temel olarak, GNOME güç ayarı özelliklerini devre dışı bırakın ve sistemin devralmasına izin verin.


0

Özel klavye kısayolu çalışıyor, gnome-session-quit --power-off --forcesadece istediğim kadar güç düğmesine basarak ayarladım .


1
Gerçekten mi? Benim için bu işe yaramıyor. Düğme hala power-button-actionseçeneğe göre davranır . Ctrl+PowerOffAncak kısayol tuşu olarak ayarlayabilirim .
Alexey

Benim için de aynı sorun. @Alexey
Konrad Höffner

0

Debian Stretch'te bunu başarmak için başka bir seçenek buldum. Paketi yükledim ve başlık yorumundan sonra ve herhangi bir koddan önce aşağıdaki satırları ekleyerek acpi-support-basedosyayı düzenledim /etc/acpi/powerbtn-acpi-support.sh.

## Bypass logic to force shutdown on power button
/sbin/shutdown -h -P now "Power button pressed"
exit 0

Bu biraz künt bir enstrüman ama benim için bir masaüstünde çalışıyor ve bir dizüstü bilgisayarda çalışmalı. Ayrıca Gnome3 ayarlarını atlar, ancak Gnome'u yamalamaktan ve yeniden derlemekten daha kolaydır.

Arch Wiki sayfasına göre acpidbu muhtemelen /etc/acpi/handler.shArch üzerinde değişiklik yapılarak uygulanabilir .


0

Bu soruna, systemd-loginddiğer yanıtlarda sunulan çözümlerin temel olarak iyileştirilmesinin günlük çıktısını izleyerek bir sunucu üzerinde çalıştım .

Bu geçici çözüm iki dosya gerektirir. Gerçek kapatma olayını tetikleyen komut dosyası

$ cat /usr/local/bin/shutdown_button_monitor.sh
#!/bin/sh

# ansible managed

# systemd-logind prints a line of the form 
# Dez 21 11:12:10 box03.yeepa.de systemd-logind[748]: Power key pressed.
# on key press, but doesn't handle the button because gnome3 blocks systemd from doing so.
# See `systemd-inhibit` for that.

# first sleep a minute so we have chance to disable this scritp if it runs amok
sleep 1m

# so we workaround gnome a bit here.
journalctl -u systemd-logind --follow --lines=0 | \
while read line ; do
    if echo "$line" | grep --quiet 'Power key pressed'
    then
        systemctl poweroff
    fi
done

ve onu başlatan / yeniden başlatan servis dosyası

$ cat /etc/systemd/system/shutdown_button_monitor.service
# ansible managed

[Unit]
Description=Power off the machine if the power button is pressed
# Workaround for gnomes block of the shutdown button
# /unix/242129/gnome-3-how-to-set-power-button-to-shutdown-instead-of-suspend#242452
# Monitor these blocks yourself with `systemd-inhibit`

[Service]
User=root
ExecStart=/usr/local/bin/shutdown_button_monitor.sh
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.