You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04.1 系统挂起后立即唤醒问题求助

Ubuntu 22.04.1 Plasma挂起后立即唤醒的排查方案

1. 定位唤醒源

  • 查看当前允许触发系统唤醒的设备:
    cat /proc/acpi/wakeup
    
    输出中标记为*enabled的设备是潜在唤醒触发源(常见如USB控制器、网卡、键鼠等)。
  • 临时禁用可疑设备测试(替换为你看到的设备名称,比如XHC、EHC1):
    echo XHC > /proc/acpi/wakeup
    
    执行后再次查看/proc/acpi/wakeup,该设备会变为disabled,此时测试挂起是否正常。
  • 若临时禁用有效,永久禁用:
    创建systemd服务文件/etc/systemd/system/disable-wakeup.service,内容如下:
    [Unit]
    Description=Disable unwanted wakeup devices
    
    [Service]
    Type=oneshot
    ExecStart=/bin/sh -c "echo XHC > /proc/acpi/wakeup"
    
    [Install]
    WantedBy=multi-user.target
    
    启用并启动服务:
    systemctl enable --now disable-wakeup.service
    

2. 检查Plasma电源管理配置

  • 打开系统设置 → 电源管理 → 节能,取消勾选不必要的“允许设备唤醒系统”选项(比如USB键鼠),确认挂起触发逻辑无异常。
  • 调整logind配置:
    编辑/etc/systemd/logind.conf,确保以下参数设置合理(按需调整):
    HandleLidSwitch=suspend
    HandleLidSwitchExternalPower=suspend
    IdleAction=suspend
    
    重启logind服务生效:
    systemctl restart systemd-logind
    

3. 关闭网络唤醒(WOL)

  • 查看网卡WOL状态(替换为你的网卡名,比如enp0s3):
    ethtool enp0s3
    
    若Wake-on字段显示g,说明WOL已开启。
  • 临时关闭WOL:
    ethtool -s enp0s3 wol d
    
  • 永久关闭:
    在netplan配置文件(位于/etc/netplan/下,比如00-installer-config.yaml)中添加:
    network:
      ethernets:
        enp0s3:
          wakeonlan: false
    
    应用配置:
    netplan apply
    

4. 从系统日志找线索

  • 查看上一次启动的唤醒相关日志:
    journalctl -b -1 | grep -i "wake\|suspend"
    
    日志会显示唤醒触发的设备或进程,可据此定位特定驱动、进程异常等问题。

内容的提问来源于stack exchange,提问作者Tim Woohoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 08:50:44