วิธีการป้องกันปุ่ม Power เพื่อปิดระบบโดยตรง?


23

ฉันติดตั้ง Ubuntu 13.10 ใหม่แล้ว เมื่อฉันกดปุ่มเพาเวอร์คอมพิวเตอร์ของฉันจะปิดตัวลงทันที ใน Ubuntu 13.04 ฉันมีเมนูดีที่ฉันสามารถเลือกได้ว่าจะทำอย่างไร มันหายไปแล้วและฉันต้องการมันกลับ นี่คือของฉัน/etc/acpi/powerbtn.sh ใน pastebin

ฉันทำไปแล้ว

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

ที่WORDเป็นhibernate, power, และsleepsuspend


1
ฉันผ่านฉันไป/etc/acpi/powerbtn.shและพบว่ามันไม่ทำอะไรเลย เมนูที่ฉันพูดถึงสามารถเรียกใช้โดยคำสั่งgnome-session-quit --power-off
Wauzl

lulz หวังว่าฉันจะอ่านความคิดเห็นของคุณก่อนที่ฉันจะไปในการไล่ล่าห่านป่าพยายามที่จะหาคำสั่งที่

คำตอบของฉันไม่ทำงานสำหรับคุณ

ฉันยกระดับคำตอบของคุณและฉันแน่ใจว่ามันจะทำงานได้; ฉันติดตั้งทั้งระบบใหม่ ฉันมีปัญหาอื่นอีกเช่นกัน นี่มันช่างเลวเหลือเกินสำหรับฉัน
Wauzl

อา, k. เพิ่งเห็นคุณหยุดโดยไซต์โดยไม่มีข้อคิดเห็นดังนั้นคิดว่าการแจ้งเตือนอาจสูญหาย แปลกติดตั้งใหม่ทั้งหมดแก้ไขได้ไหม คุณดาวน์โหลด 13.10 ล่าสุดหรือไม่ ฉันติดตั้งใหม่และเพิ่งมีปัญหานี้

คำตอบ:


29

ตรวจสอบ/etc/systemd/logind.confไฟล์ของคุณ ควรมีลักษณะเช่นนี้:

[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

ยกเลิกหมายเหตุบรรทัดที่ระบุ#HandlePowerKey=poweroffและเปลี่ยนค่าเป็นignore

จากนั้นรีสตาร์ท logind ด้วยคำสั่ง: sudo restart systemd-logindหรือรีบูตเครื่องคอมพิวเตอร์ของคุณ

แก้ไข: วิธีการสร้างตัวจัดการ ACPI ใหม่/etc/acpi/events/สร้างไฟล์ใหม่ใน เนื้อหาของไฟล์ควรเป็น:

event=<acpi_event_code>
action=<script_to_call>

<acpi_event_code>รหัสที่คุณใช้กับacpi_listenเครื่องมืออยู่ที่ไหนและ<script_to_call>เป็นเส้นทางแบบเต็มไปยังสคริปต์ที่คุณต้องการโทรหาเมื่อเกิดเหตุการณ์

พวกเขาต้องเปลี่ยนบางอย่างใน 13.10 เพราะดูเหมือนว่าฉันมีไฟล์น้อยเกินไปในโฟลเดอร์ / etc / accpi / events ของฉันเทียบกับ 13.04


นี่ไม่ได้นำเมนูที่รักกลับมา มันไม่ทำอะไรเลยเมื่อฉันกดปุ่มเปิดปิดทันที
Wauzl

หากดำเนินการตามจริงแล้ว powerbtn.sh เมื่อกดปุ่มเปิดปิดคุณสามารถลองเรียกใช้งานคำสั่งเมนูปิดหากเซิร์ฟเวอร์ X กำลังทำงานและ gnome เป็นสภาพแวดล้อมเดสก์ทอปของคุณ ดูที่ผลลัพธ์ของexportคำสั่งเพื่อกำหนดตัวแปรที่จะทดสอบ หากสคริปต์ powerbtn.sh ไม่ได้ถูกดำเนินการเลยคุณสามารถลองดูว่ากิจกรรม acpi ใดที่ต้องเชื่อมโยงด้วยการเรียกใช้acpi_listenและกดปุ่มเปิด / ปิด นอกจากนี้อาจมีตัวเลือกในคำพังเพยที่จะนำเมนูพาวเวอร์กลับมา แต่ฉันไม่แน่ใจว่าเป็นเวลานานแล้วที่ฉันใช้ gnome ครั้งล่าสุด
jeremija

ฉันพยายามและpowerbtn.shไม่ได้ (อาจ) เพราะไม่มีอะไรเกิดขึ้นเมื่อฉันกดปุ่ม ตัวacpi_listenบอกฉันว่าปุ่มทริกเกอร์เหตุการณ์ acpi น่าเสียดายที่ปุ่มปรับระดับเสียงขึ้นและลงของฉันไม่ทำงาน บางทีนี่อาจจะเกี่ยวข้องกัน
Wauzl

คุณอาจจะลองต่อไปนี้: grep "<acpi_event_code>" /etc/acpi/events/*ที่<acpi_event_code>เป็นรหัสของเหตุการณ์ ACPI ที่คุณเห็นใน acpi_listen หากคุณได้รับผลลัพธ์ให้ดูไฟล์นั้นและดูชื่อของสคริปต์ที่เรียกใช้ /etc/acpi/events/ถ้าคุณไม่ได้รับผลคุณสามารถลองเพิ่มไฟล์ใหม่ใน ดูคำตอบที่แก้ไขสำหรับรายละเอียดเพิ่มเติม
jeremija

ยืนยันว่าใช้งานได้กับ 16.04 LTS บน mac ของฉัน
เบนจามิน R

4

jeremijah วางฉันบนแทร็กที่ถูกต้องดังนั้นความรุ่งโรจน์!

ฉันแก้ไข/etc/systemd/logind.confตามคำแนะนำ แต่ฉันยังไม่ได้นี้


1

หากวิธีการข้างต้นไม่ได้ผลสำหรับคุณ นี่คือวิธีแก้ไขปัญหาอย่างรวดเร็ว:

  • ติดตั้ง xtrlock

ยูทิลิตี้นี้ใช้งานได้สำหรับคุณ แม้ว่าสิ่งนี้อาจไม่ตอบคำถาม แต่ในหลาย ๆ วิธีที่ฉันได้ลอง (รวมถึงคำถามในหน้านี้) ดูเหมือนจะไม่มีใครทำงานได้

ติดตั้ง:

sudo apt install xtrlock 

วิธีใช้: พิมพ์xtrlockในบรรทัดคำสั่ง สิ่งนี้จะหยุดเมาส์แป้นพิมพ์

หากต้องการปลดล็อกให้พิมพ์รหัสผ่านของคุณแล้วกด [Enter]


นอกจากนี้ยังสามารถตรึงปุ่มเปิดปิดของคุณ

ป.ล. โซลูชั่นนี้มีประโยชน์อย่างยิ่งสำหรับผู้ที่มีเด็กและต้องการปิดการทำงานของปุ่มเปิดปิดด้วยเหตุผล

xtrlock - ล็อคหน้าจอ X จนกว่าจะมีรหัสผ่านให้โดยปล่อยให้หน้าต่างมองเห็นได้ Source: http://manpages.ubuntu.com/manpages/artful/man1/xtrlock.1x.html


โปรดขยายคำตอบของคุณ แอพนี้มีให้ใช้งานในที่เก็บหรือไม่? คุณติดตั้งโดยใช้บรรทัดคำสั่งหรือผ่านทาง Ubuntu Software Center ได้อย่างไร หากผ่านทางบรรทัดคำสั่งคุณใช้คำสั่งใด คุณได้กำหนดค่ามันอย่างไร?
user68186

1

ก่อนอื่นคุณสามารถแก้ไขไฟล์ keymap ของคุณเพื่อเปลี่ยนการทำงานของปุ่มเปิดปิดเพื่อกำหนดให้กับปุ่มอื่น

แก้ไขไฟล์: /usr/share/X11/xkb/symbols/inet(แก้ไขคีย์ POWR)

จากนั้นคุณจะต้องปิดการใช้งานปุ่มเปิดปิดอย่างมีประสิทธิภาพวิธีที่ดีคือใช้ xinput

เรียกใช้xinput --listปุ่มเพาเวอร์มีรายการของตัวเอง ... เลือกหมายเลขอุปกรณ์แล้วเรียกใช้

xinput disable devnumber สิ่งที่ต้องการ xinput disable 8

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.