背景/理由
在 Ubuntu 18.04 中,我遇到了一个完全不寻常的问题,而其他有关 xinerama 或 xrandr 的问题都没有解决这个问题。突然间,我的 4K 显示器经常被视为 1440p 显示器,没有选项可以将分辨率重新设置为 4K。此问题往往是由显示器重启或分辨率更改(例如由于游戏)触发的。一旦问题开始,运行
xrandr -s 3840x2160
或者使用 执行等效操作gnome-settings
会导致屏幕变黑几秒钟,然后默默地返回到不正确的2560x1440
分辨率。特别是,xrandr
和dmesg
似乎都没有显示与问题相关的任何错误消息。此外,一旦触发,问题在重新启动后仍然存在:分辨率仍然很低,并且xrandr 3840x2160
仍然默默失败。似乎解决问题的唯一方法是等待相当长的时间让问题自发解决。
该问题可能由硬件问题引起,但我认为这种可能性不大,因为:
当分辨率问题未触发时,4K 工作正常:仍然是 60Hz,流畅,无失真。
在其他操作系统或 gdm 登录屏幕上不会出现此问题(据我所知,文本以原始分辨率显示)。只有在实际启动 X 会话后,分辨率才会重置为 1440p。
插入第二台 4K 显示器并同时使用两台显示器也可以解决问题 - 但一旦移除第二台 4K 显示器,问题就会再次出现!
我怀疑 xinerama 的内部状态发生了一些奇怪的事情——我不明白为什么我会突然被这些随机的分辨率变化所困扰,除非是硬件故障,但我觉得这种情况不太可能发生。所以我想删除/硬重置构成 xinerama 内部状态的所有文件。
实际问题
我想要知道 xinerama 配置文件的位置(或者更一般地说,它的内部状态)并强制重置它们。您可以尝试 xy 问题,但请先查看失败的解决方案。
失败的解决方案
xrandr -s 0
-- 此命令通常是“如何重置?”问题的答案。这与 的效果相同xrandr -s 3840x2160
,即什么都没有。我想重置所有状态以尝试解决问题。
如上所述,重新启动。
手动添加3840x2160
为新模式。问题不在于显示器无法将该选项报告为选项,而是xrandr
在选择该分辨率时莫名其妙地什么也不做。
硬件/软件详细信息
内核:4.15.0-70-generic
发行版:Ubuntu 18.04
处理器:AMD Ryzen 2700X
显卡:AMD Vega 64
桌面:GNOME 3
显示器:戴尔 U2718Q
答案1
删除~/.config/monitors.xml
似乎暂时解决了问题。该文件稍后重新创建。我不认为文件本身是真正的问题——相反,它似乎触发了一些潜在的错误xrandr
(而且它肯定是一个错误——不管怎样,xrandr
将其列为3840x2160
选项但不支持实际选择该选项是没有意义的)。但是,既然问题暂时解决了,我不想深入研究问题的真正原因。