Ubuntu 18.04 和 Dell XPS 13 9350 盖子关闭时出现挂起问题

Ubuntu 18.04 和 Dell XPS 13 9350 盖子关闭时出现挂起问题

我的 Dell XPS 13 9350 笔记本电脑上连接了一台外接显示器。每当我合上笔记本电脑盖时,笔记本电脑的显示器都会关闭,但外接显示器会保持打开状态并成为主显示器。我测试了在没有外接显示器的情况下合上盖子时会发生什么,发现笔记本电脑挂起前有 20-30 秒的延迟。如果我在 10-15 秒内合上盖子并再次打开,笔记本电脑甚至不会锁定。我想知道这个延迟是否是我的笔记本电脑无法使用外接显示器挂起的原因?

拥有类似计算机的人在这里问了类似的问题: Ubuntu 18.04 + Dell XPS 9360 = 当我关闭盖子时,悬挂装置不起作用

不过,这似乎不是同一个问题,因为他们的计算机根本不会暂停。我确实尝试了许多建议。

我的电脑正在进入“深度”睡眠模式,而不是“s2idle”模式。当我运行 时sudo journalctl | grep "PM: suspend" | tail -2,我得到以下结果:

Feb 11 14:09:11 MyComp kernel: PM: suspend entry (deep)
Feb 11 14:09:17 MyComp kernel: PM: suspend exit

我尝试编辑/etc/systemd/logind.conf并取消注释以下两行,使其内容如下:

HandleLidSwitch=suspend
HandleLidSwitchDocked=suspend

/etc/systemd/sleep.conf我也尝试按照上面链接中的一个答案所述进行创建,但没有任何变化。

我没有 nVidia 显卡,所以任何针对 nVidia 显卡的解决方案都对我没用。如果有帮助的话,我的显卡是 Intel HD Graphics 520 (Skylake GT2)。

我下载了 Gnome Tweaks 工具,并确保电源下的“当笔记本电脑盖关闭时暂停”设置已打开。

如果有帮助的话,我正在使用内核 4.15.0-45-generic。

我知道这不是硬件问题,因为我的计算机是 Windows 10 双启动,并且当我在 Windows 10 上使用或不使用外接显示器关闭盖子时,我的笔记本电脑都可以毫无问题地进入睡眠状态。

主要是,我想关闭笔记本电脑,这样电脑就可以进入睡眠状态,而无需拔掉外接显示器。如果没有外接显示器,笔记本电脑挂起的延迟是我可以忍受的。

答案1

尝试pm-实用程序. 以 root 身份运行命令

$ pm-suspend

在 /var/log/pm-suspend.log 中你应该看到类似以下内容

Initial commandline parameters: 
Thu Aug  1 09:46:07 CEST 2019: Running hooks for suspend.
Running hook /usr/lib/pm-utils/sleep.d/000kernel-change suspend suspend:
/usr/lib/pm-utils/sleep.d/000kernel-change suspend suspend: success.

Running hook /usr/lib/pm-utils/sleep.d/000record-status suspend suspend:
/usr/lib/pm-utils/sleep.d/000record-status suspend suspend: success.

Running hook /usr/lib/pm-utils/sleep.d/00logging suspend suspend:
Linux planb 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Module                  Size  Used by
ccm                    20480  6
rfcomm                 77824  32
...
Thu Aug  1 09:46:07 CEST 2019: performing suspend

然后唤醒系统。在 /var/log/pm-suspend.log 中,您应该会看到类似以下内容的内容

Thu Aug  1 09:46:31 CEST 2019: Running hooks for resume
Running hook /usr/lib/pm-utils/sleep.d/99video resume suspend:
/usr/lib/pm-utils/sleep.d/99video resume suspend: success.
...

/usr/lib/pm-utils/sleep.d/000kernel-change resume suspend: success.
Thu Aug  1 09:46:32 CEST 2019: Finished.

根据您的需要定制 pm-utils,创建 pm-suspend 的快捷方式(例如 Ctrl-Alt-S)并禁用 lid

$ grep -i Lid /etc/systemd/logind.conf
#HandleLidSwitchDocked=ignore
HandleLidSwitch=ignore
LidSwitchIgnoreInhibited=no

$ grep -i lid /etc/UPower/UPower.conf
IgnoreLid=true

我现在没有 XPS 13,但我记得这样使用 18.04 对我来说是可行的。YMMV。还有一个优点。连接外部显示器后,您可以关闭盖子。


仅供参考。以下是 Ansible 角色的链接linux_安装后以及任务pm-实用程序特别是。我使用下面的配置数据

$ cat lp-lid.yml 
lp_lid: true
lp_lid_logind_conf: "/etc/systemd/logind.conf"
lp_lid_upower_conf: "/etc/UPower/UPower.conf"
lp_lid_logind_conf_vars:
  - { var: "HandleLidSwitch", value: "ignore" }
  - { var: "LidSwitchIgnoreInhibited", value: "no" }
lp_lid_upower_conf_vars:
  - { var: "IgnoreLid", value: "true" }

$ cat lp-pm.yml 
lp_pm: true
lp_pm_sleepd: {}

相关内容