Ubuntu 22.04双显示器休眠反复启停及主显示器刷新率异常问题求助
Ubuntu 22.04双显示器休眠反复启停及主显示器刷新率异常问题求助
兄弟,我之前帮不少朋友处理过N卡+双屏在Ubuntu上的这类糟心问题,你的情况确实挺典型的——大概率是N卡驱动和Ubuntu电源管理、显示 compositor 的兼容性冲突导致的,给你几个实操性强的方案试试:
一、解决休眠时显示器反复启停的问题
- 检查并更换N卡驱动版本:优先用Ubuntu官方推荐的闭源N卡驱动,别用开源的nouveau。打开终端输入:
看输出里标有ubuntu-drivers devicesrecommended的驱动版本,比如nvidia-driver-535,然后执行安装命令:
安装完成后重启系统,再测试休眠情况。sudo apt install nvidia-driver-535 - 调整系统电源与显示设置:打开系统设置→电源,暂时把「自动挂起」的时间调长或者关闭;再进入「显示」设置,找到「电源节省」选项,关掉「黑屏后挂起」的开关——有时候系统的电源策略和N卡的休眠触发逻辑会互相干扰。
- 临时禁用DPMS显示电源管理:在终端执行:
之后测试休眠模式,如果不再反复跳屏,就把这个命令加到开机启动项里:打开「启动应用程序」,添加新条目,名称填「禁用DPMS」,命令填xset -dpmsxset -dpms,下次开机就会自动生效。
二、解决主显示器刷新率显示异常的问题
- 手动添加自定义165Hz刷新率模式:
- 先在终端生成1080p165Hz的模式参数:
输出会类似这样:cvt 1920 1080 165Modeline "1920x1080_165.00" 338.75 1920 2088 2304 2688 1080 1083 1088 1157 -hsync +vsync - 用
xrandr添加这个新模式:xrandr --newmode "1920x1080_165.00" 338.75 1920 2088 2304 2688 1080 1083 1088 1157 -hsync +vsync - 找到你的主显示器名称(用
xrandr命令查看,比如DP-0),把新模式添加到该显示器:xrandr --addmode DP-0 1920x1080_165.00 - 最后去系统显示设置里,就能选择这个165Hz的模式了。
- 先在终端生成1080p165Hz的模式参数:
- 调整N卡合成管线设置:打开NVIDIA X Server Settings,进入「X Server Display Configuration」,点击「Advanced...」,试试切换「Force Full Composition Pipeline」和「Force Partial Composition Pipeline」——有时候后者对双屏刷新率的兼容性更好,同时可以关掉「Sync to VBlank」选项再测试。
- 禁用Mutter compositor的全屏重定向:在终端执行:
重启系统后,这个设置会让全屏窗口直接使用显卡输出,可能解决刷新率显示和实际不符的问题。gsettings set org.gnome.mutter experimental-features "['x11-randr-fractional-scaling', 'disable-unredirect-fullscreen-windows']"
如果以上方案都没解决,还可以试试升级Ubuntu到22.04.3及以上版本,新版本会修复不少N卡驱动的兼容性bug;另外也可以去BIOS里禁用集显,只用独显输出——集显和独显的切换逻辑有时候也会引发这类显示异常。
备注:内容来源于stack exchange,提问作者kennethmanuel




