有关Ubuntu在关盖休眠后可行的拯救方法

 更新时间:2026年02月15日 14:43:33   作者:Ayeking  
这篇文章主要介绍了有关Ubuntu在关盖休眠后可行的拯救方法的相关资料,需要的朋友可以参考下

本人在使用联想小新15(Ubuntu22.04)时遇到了当关盖挂起后再开盖后不久紫屏的情况,我使用更换内核的方法来解决了这样的问题

硬件环境

  • 机型:Lenovo XiaoXin Air 15ALC 2021
  • CPU: AMD Ryzen(集成显卡)
  • 显卡: AMD Radeon Graphics(amdgpu 驱动)
  • 网卡: Realtek rtw89_8852ae(WiFi 6)
  • 系统: Ubuntu 24.04/win 10(双系统共存)

问题现象

 系统从休眠(Hibernate)状态被唤醒后,正常使用一段时间(几分钟到十几分钟)突然Kernel Panic,随后只能强制关机重启。

关键特征

  • 不是立即崩溃而是唤醒后使用一段时间之后才崩溃
  • 强制重启后系统日志显示正常,无有效错误记录(崩溃时来不及写入)

日志分析

通过journalctl -b -1 -p 3查看上次启动的错误日志,发现关键报错:

kernel: amdgpu 0000:03:00.0: amdgpu: Secure display: Generic Failure.
kernel: amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: query securedisplay TA failed. ret 0x0

kernel: rtw89_8852ae 0000:01:00.0: Update probe request failed
kernel: rtw89_8852ae 0000:01:00.0: HW scan failed with status: -110

错误解读

  • amdgpu: Secure display: Generic Failure :AMD显卡在电源状态切换(休眠$\rightarrow$唤醒)时,PSR(Panel Self Refresh)功能恢复失败
  • rtw89_8852ae:HW scan failed: Realtek 8852网卡在休眠后Wifi芯片状态异常

根本原因

  • PSR兼容性问题:AMD显卡的PSR节能功能在小新air的eDP面板上实现不完善,休眠后恢复时出现时序错误导致GPU驱动崩溃
  • ACPI实现缺陷:联想小新系列的ACPI固件对Linux支持不佳,ideapad_laptop驱动在电源管理事件中处理不当
  • 内核版本老旧(可能存在):Ubuntu默认的内核缺乏对小新Air的电源管理补丁
  • 网卡驱动问题:rtw89驱动在旧内核中对WoWLAN(无线唤醒)的支持不完善

解决方案

  • 升级内核(核心解决)

    主线内核6.8+已修复AMD PSR和rtw89的电源管理问题,但不知为何本机需要升级到6.14+或更新的HWE内核

    #方案A:安装Ubuntu HWE内核(推荐,带官方维护)
    sudo apt install linux-generic-hwe-24.04
    
    # 方案 B:安装主线内核 6.14(我实际采用的方案)
    # 从 kernel.ubuntu.com 下载:
    # linux-headers-6.14.0-xxx-generic_amd64.deb
    # linux-image-6.14.0-xxx-generic_amd64.deb
    # linux-modules-6.14.0-xxx-generic_amd64.deb
    sudo dpkg -i *.deb
    
  • 修改GRUB启动参数
    编辑/etc/default/grub,在GRUB_CMDLINE_LINUX_DEFAULT中添加:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amdgpu.dcdebugmask=0x10 modprobe.balcklist=ideapad_laptop"
    

    参数说明

    • amdgpu.dcdebugmask=0x10:禁用PSR(Panel Self Refresh),这是紫屏的直接元凶
    • modprobe.blacklist=ideapad_laptop:禁用联想的WMI热键/电源管理驱动,避免ACPI冲突

    更新GRUB

    sudo update-grub
    
  • 更新固件

    确保无线网卡固件为最新

    #查看已安装的内核
    sudo grep menuentry /boot/grub/grub.cfg | grep 6.14
    
    # 设置为默认启动(根据实际版本号调整)
    sudo grub-set-default "Advanced options for Ubuntu>Ubuntu, with Linux 6.14.0-37-generic"
    sudo update-grub
    

    避坑指南

    不要使用Novean:如果使用的是双显卡版本,务必按安装proprietary NVIDIA驱动,不要禁用nouveau

    慎用休眠:Linux笔记本休眠(Hibernate)依赖swap文件且对固件要求苛刻,建议改用睡眠(Suspend)或者关机

    保留旧内核:升级后保留旧内核作为fallback,新内核启动失败时可在GRUB高级选项切回

    验证结果

    重启后执行:

    uname -r
    #输出版本号:6.14.0-37-generic
    
    systemctl suspend #测试睡眠唤醒
    

    总结

    小新Air 15 2021这类性价比轻薄本在Linux下的问题具有代表性:

    • 硬件新固件旧:通常ACPI表只针对Windows调试
    • Realtek网卡:rtw89在6.2内核前几乎无法稳定用于休眠场景,建议Intel网卡机型
    • AMD核显:相比NVIDIA省心,但是PSR问题困扰2020-2021的多款机型
      如果追求开箱即用dLInux体验建议考虑Dell XPS、ThinkPad T/X系列或者Framework。

到此这篇关于有关Ubuntu在关盖休眠后可行的拯救方法的文章就介绍到这了,更多相关Ubuntu关盖休眠拯救方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Apache Shiro 框架简介

    Apache Shiro 框架简介

    Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能,下文给大家带来了Apache Shiro 框架简介,感兴趣的朋友一起看看吧
    2017-09-09
  • 详解linux centos yum安装LAMP环境

    详解linux centos yum安装LAMP环境

    本篇文章主要介绍了linux centos yum安装LAMP环境 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧。
    2016-12-12
  • 查看Linux版本信息的四种常用方法

    查看Linux版本信息的四种常用方法

    我在管理 Hostease 的 Linux 服务器时,时常需要查看系统的具体版本信息,了解具体的系统版本信息不仅有助于软件安装和系统维护,还能有效解决兼容性问题,本文将介绍几种常用方法,帮助您通过命令行工具快速获取 Linux 发行版及版本信息,需要的朋友可以参考下
    2025-12-12
  • Linux服务器利用防火墙iptables策略进行端口跳转的方法

    Linux服务器利用防火墙iptables策略进行端口跳转的方法

    这篇文章主要介绍了Linux服务器利用防火墙iptables策略进行端口跳转的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 详解SSH 远程执行任务的方法

    详解SSH 远程执行任务的方法

    本篇文章主要介绍了详解SSH 远程执行任务的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • Polysh命令实现多日志查询的方法示例

    Polysh命令实现多日志查询的方法示例

    大家应该都知道Polysh是一个交互式命令,可以在一台服务器上批量的对一批服务器进行处理,运行交互式命令。下面这篇文章主要给大家介绍了关于利用Polysh命令实现多日志查询的相关资料,需要的朋友可以参考,下面来一起看看吧。
    2017-12-12
  • Linux下PhpMyAdmin程序目录结构的安全管理

    Linux下PhpMyAdmin程序目录结构的安全管理

    Linux下开发Web程序,现在很流行的开发方法为:用PHP开发Web程序,用Apache做Web Server,Mysql充当后台管理数据库。
    2011-04-04
  • Linux云服务器安装JDK和Tomcat的详细步骤(推荐)

    Linux云服务器安装JDK和Tomcat的详细步骤(推荐)

    这篇文章主要介绍了Linux云服务器安装JDK和Tomcat的详细步骤,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • Linux环境下安装MySQL全过程

    Linux环境下安装MySQL全过程

    在Linux系统中安装MySQL需先切换至root用户,卸载原有MariaDB/MySQL包,添加官方yum源,安装服务,配置my.cnf并设置权限,最后通过临时密码或跳过验证登录
    2025-08-08
  • apache伪静态与iis伪静态规则与配置区别介绍

    apache伪静态与iis伪静态规则与配置区别介绍

    本文章来总结一下关于apache伪静态与iis伪静态区别介绍,主要讲到了一些规则的问题与配置区别,以后大家就可以直接在iis伪静态转换apache,反之也很简单哦,需要了解的碰可以参考下
    2012-12-12

最新评论