You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 18.04自动休眠异常触发问题求助

Ubuntu 18.04自动休眠异常触发问题求助

看起来你已经尝试了不少配置,但Ubuntu 18.04的自动休眠机制确实和20.04有一些差异,我来帮你梳理几个可能的解决方向:

1. 补全GNOME电源插件的配置参数

Ubuntu 18.04里,org.gnome.settings-daemon.plugins.power的部分参数可能需要更完整的设置,除了你已配置的项,不妨试试添加或确认以下内容:

gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'nothing'

哪怕你用的是AC电源,电池相关的配置有时候也会影响全局逻辑,把这两项设为0和nothing,能彻底切断电池场景下的休眠触发逻辑,避免干扰AC模式。

2. 检查并禁用systemd的独立休眠定时器

Ubuntu 18.04的systemd有自己的休眠触发机制,可能和GNOME的设置不联动,你可以这样排查:

  • 先列出所有休眠相关的定时器:
systemctl list-timers | grep sleep
  • 如果发现systemd-suspend.timer之类的定时器在运行,直接禁用它:
sudo systemctl stop systemd-suspend.timer
sudo systemctl disable systemd-suspend.timer
  • 另外,编辑/etc/systemd/logind.conf,修改以下配置项:
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
IdleAction=ignore
IdleActionSec=0

修改后重启systemd-logind服务生效:

sudo systemctl restart systemd-logind

3. 把dconf配置应用到全局(包括gdm会话)

你之前的配置可能只针对当前用户,但gdm3自身的会话也可能有独立的电源设置,建议把配置导入系统级文件:

  • 创建/etc/dconf/db/local.d/00-disable-suspend文件,写入以下内容:
[org/gnome/desktop/session]
idle-delay=uint32 0

[org/gnome/settings-daemon/plugins/power]
idle-dim=false
sleep-inactive-ac-timeout=0
sleep-inactive-ac-type='nothing'
sleep-inactive-battery-timeout=0
sleep-inactive-battery-type='nothing'

[org/gnome/desktop/screensaver]
idle-activation-enabled=false
lock-delay=uint32 0
lock-enabled=false
  • 然后更新dconf数据库,让全局配置生效:
sudo dconf update

4. 彻底禁用Xorg的DPMS功能

你试过xset s noblank,但DPMS(显示电源管理信号)才是触发屏幕休眠的核心,需要一起禁用:

xset -dpms
xset s off

可以把这两行添加到~/.xprofile或者/etc/X11/Xsession.d/99-disable-dpms文件里,确保每次登录都会自动执行。

5. 排查第三方电源工具的冲突

Ubuntu 18.04默认安装的upower可能会覆盖GNOME的设置,你可以先检查它的配置:

upower -d | grep -A 10 "sleep"

如果发现异常的休眠超时设置,编辑/etc/UPower/UPower.conf,把IdleSleepTimeout改成0,然后重启服务:

sudo systemctl restart upower

备注:内容来源于stack exchange,提问作者ojacomarket

火山引擎 最新活动