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

联想Legion Pro 5(16IRX8)Ubuntu 23.10系统睡眠唤醒后NVIDIA显卡外接显示器分辨率异常求助

联想Legion Pro 5(16IRX8)Ubuntu 23.10系统睡眠唤醒后NVIDIA显卡外接显示器分辨率异常求助

嘿,我之前碰到过类似NVIDIA显卡在Linux下睡眠唤醒后显示配置混乱的问题,结合你的设备情况,给你几个实用的排查和解决方向:

1. 调整NVIDIA驱动的显存保留策略

NVIDIA驱动默认的电源管理可能会在睡眠时释放显存,导致唤醒后无法正确识别显示器的高分辨率参数。你可以通过GRUB参数强制保留显存分配:

  • 编辑GRUB配置文件:sudo nano /etc/default/grub
  • 找到GRUB_CMDLINE_LINUX_DEFAULT这一行,添加两个参数,修改后类似:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia.NVreg_PreserveVideoMemoryAllocations=1 nvidia.NVreg_TemporaryFilePath=/var/tmp"
    
  • 保存退出后,执行sudo update-grub更新配置,然后重启系统。这个设置能让显卡在睡眠状态下保留显存里的显示配置信息,减少唤醒后的异常。

2. 写个唤醒自动修复的脚本

既然注销登录能恢复,说明是桌面会话的显示配置没重置。可以写个简单脚本,让系统唤醒时自动帮你切回正确的分辨率:

  • 先获取你的显示器名称:执行xrandr | grep connected,找到三星CRG90对应的接口名(比如DP-0或者HDMI-1)
  • 创建修复脚本:nano ~/fix_display.sh,写入以下内容(替换<你的显示器接口>为实际名称):
    #!/bin/bash
    xrandr --output <你的显示器接口> --mode 5120x1440 --rate 120
    
  • 给脚本加执行权限:chmod +x ~/fix_display.sh
  • 设置自动执行:可以通过GNOME的「启动应用程序」添加这个脚本,或者用systemd创建一个唤醒触发的服务,这样每次唤醒后就自动修复了。

3. 尝试切换NVIDIA驱动版本

你当前用的是535.154.05版本,有时候特定驱动版本会和特定硬件组合有睡眠唤醒的兼容性问题:

  • 打开Ubuntu的「软件和更新」→「附加驱动」,看看有没有更新的稳定版驱动(比如545系列),切换后重启试试
  • 如果最新版不行,也可以回退到稍旧的稳定版(比如530系列),有些旧版本反而在特定设备上兼容性更好

4. 强制加载显示器的EDID数据

睡眠唤醒后系统可能没能正确读取显示器的EDID(显示能力描述数据),导致分辨率选项丢失。可以备份EDID并强制系统加载:

  • 安装读取EDID的工具:sudo apt install read-edid
  • 读取并保存显示器的EDID:get-edid | parse-edid > ~/samsung_crg90.edid
  • 创建EDID存放目录并复制文件:
    sudo mkdir -p /usr/lib/firmware/edid/
    sudo cp ~/samsung_crg90.edid /usr/lib/firmware/edid/
    
  • 再次编辑GRUB配置,添加强制加载EDID的参数:在GRUB_CMDLINE_LINUX_DEFAULT里加上drm.edid_firmware=<你的显示器接口>:edid/samsung_crg90.edid(比如接口是DP-0就写drm.edid_firmware=DP-0:edid/samsung_crg90.edid)
  • 执行sudo update-grub后重启系统

这些方法应该能覆盖大部分可能的问题,你可以先从调整GRUB参数和脚本修复开始试,这两个操作相对简单见效快。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 11:05:29