发布于2026-08-19 阅读(0)
扫一扫,手机访问
要想解决问题,最直接有效的办法是同时设置三行,分别是HandleLidSwitch=ignore、HandleLidSwitchExternalPower=ignore以及HandleLidSwitchDocked=ignore。此外,还需要关闭GNOME的“Suspend when laptop lid is closed”选项。否则,即便合上盖子,也可能会触发挂起。

HandleLidSwitch=ignore 是最直接有效的解决方式,但仅改这一行常失效——因为 Ubuntu 默认会按供电状态分别处理合盖行为,必须同时覆盖三种场景。
先看系统实际在用哪套规则:
grep -E "^HandleLidSwitch" /etc/systemd/logind.conf
如果输出为空或只有注释行(如 #HandleLidSwitch=suspend),说明 systemd 正在使用内置默认值,而非你手动改过的那行。常见错误是只改了 HandleLidSwitch,却忽略另外两个关键参数。
HandleLidSwitch:仅电池供电时生效HandleLidSwitchExternalPower:插着电源适配器时生效HandleLidSwitchDocked:接入扩展坞(含多显示器/外接电源)时生效多数人合盖时其实处于“插电”状态,所以单改 HandleLidSwitch 完全没用。
编辑配置文件:
sudo nano /etc/systemd/logind.conf
找到这三行(或手动添加),确保它们都取消注释、小写、无空格:
HandleLidSwitch=ignoreHandleLidSwitchExternalPower=ignoreHandleLidSwitchDocked=ignore注意:ignore 必须全小写;行首不能有空格;等号前后不要加空格;每行开头不能留 #;保存后权限应为 -rw-r--r--(644)。
改完立刻重启服务:
sudo systemctl restart systemd-logind
即使底层 logind.conf 已设为 ignore,GNOME 仍可能在桌面会话层拦截合盖事件并强制挂起。这是双重控制机制,必须同步关闭:
gnome-tweaks(若未装):sudo apt install gnome-tweaks这个开关不依赖重启,改完立即生效。但它只影响当前 GNOME 会话,对 SSH 或 tty 终端无效——所以底层 logind.conf 修改仍是必需的。
测试前先启一个长运行命令:
ping -i 5 8.8.8.8 && echo "still alive"
合盖等待 30 秒,开盖后检查:
systemctl status systemd-logind 看服务是否 active(有时重启失败但无报错)loginctl show-session $(loginctl | grep -o 'session-[0-9]*' | head -1) -p Type,确认输出不是 Type=unmanaged(表示 session 未被 logind 正确接管)还有一点极易被忽视:某些厂商的BIOS/UEFI会主动向内核发送lid close事件,而systemd-logind对此只能响应,却无法屏蔽硬件信号本身。要是这种情况反复出现且无法解决,那就得检查BIOS中是否存在“Lid Switch”或“Power Management”相关选项,并尝试将其禁用。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9