盖子关闭并挂起到内存:涉及哪些软件?

盖子关闭并挂起到内存:涉及哪些软件?

为了解决一些可靠性问题挂起至内存(笔记本电脑盖子关闭时),我想询问哪个软件与此有关。这样我就可以解决以下问题:

  • “挂起到内存”能否正常工作取决于登录状态和 tty3。我有 wayland 和 Xorg,有时还有一个在 1 到 5 个 tty 上运行的控制台
  • 似乎涉及到systemd logind我的一些 DE(最突出的是Gnome3xfce)。
  • 重新打开盖子并从最后一个恢复时,suspend-to-ramgdm东西不允许“挂起到内存”,迫使我在有另一次机会(这是不可靠的)“挂起到内存”之前锁定,其中它本身需要 5 秒以上(我可以从当时播放的音频看出,从合上盖子到关闭音乐很容易需要 7 到 10 秒)

我记得(从之前处理与挂起到内存相关的类似问题),“现代”Linux 使用 和Gnomesystemd并且loginkitlogind容易出现挂起问题,因为不同的软件与告诉“盖子关闭”和“禁止挂起”相关-到公羊”。

一个好的答案至少会列出与挂起到内存相关的软件。最好还简要概述不同软件的顺序和所扮演的角色。

前提是它可能取决于init我最感兴趣的桌面环境和相关答案

  • 系统
  • Debian/Ubuntu 18.04
  • 侏儒3

最佳答案还将强调我如何最多禁用任何软件和 GUI 相关的东西 在此输入图像描述

和其他“有用的”自动化对我来说只是基本的(但有效):

root@box$ while sleep 1; do 
    grep "closed" /proc/acpi/button/lid/LID0/state && {
        systemctl suspend 
        sleep 3 
    } 
    done 

就足够了。

无论如何,这个问题试图找出的核心信息是(什么软件参与“检查盖子状态”并因此“挂起到内存”的任务?)

答案1

好的,既然acpid看起来在您的系统上运行(请参阅评论),那么可能就是这个软件组件控制了电源管理。

它是通过配置的/etc/acpi/。例如,在我的 Debian 中,我有一个/etc/acpi/events/lidbtn配置文件,用于定义如何对与盖子相关的每个事件做出反应。

它包含了:

# /etc/acpi/events/lidbtn
# Called when the user closes or opens the lid

event=button[ /]lid
action=/etc/acpi/lid.sh

然后,我想添加一些在盖子关闭期间运行的操作,我只需将其添加到外壳的正确位置即可/etc/acpi/lid.sh。设置的许多环境变量acpid可以帮助检测事件类型。

您可以阅读 acpid 的联机帮助页以获取更多详细信息。

相关内容