Ubuntu 16.04 上的错误分辨率“未知监视器”

Dan*_*elC 5 xrandr display nvidia xorg display-resolution

经过一些更新和最近重新启动后,我的屏幕分辨率变得疯狂。我的问题与this onethis one相似,但是那里提供的解决方案并没有解决我的问题。我的显示器的正确设置是 60 Hz 时的 1920:1200(即 8:5 纵横比),但 Ubuntu 仅提供 1600x1200 并显示“未知显示”。所以不仅分辨率不对,而且我屏幕上的所有东西看起来都是水平拉伸的。这就是我所做的:

 % cvt 1920 1200 60
 # 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz
 Modeline "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203
 1209 1245 -hsync +vsync
 
 % xrandr --newmode "1920x1200_60" 193.25  1920 2056 2256 2592  1200 
 1203 1209 1245 -hsync +vsync
 xrandr: Failed to get size of gamma for output default
 
 % xrandr --addmode default 1920x1200_60
 xrandr: Failed to get size of gamma for output default

 % xrandr --output default --mode 1920x1200_60
 xrandr: Failed to get size of gamma for output default
 xrandr: Configure crtc 0 failed

 % xrandr -s 1920x1200
 Failed to change the screen configuration!

 % xrandr
 xrandr: Failed to get size of gamma for output default
 Screen 0: minimum 1600 x 1200, current 1600 x 1200, maximum 1920 x 1200
 default connected primary 1600x1200+0+0 0mm x 0mm
    1600x1200     77.00* 
    1920x1200_60  59.88
Run Code Online (Sandbox Code Playgroud)

此时,如果我转到 GUI 中的“显示”,我的显示仍称为“未知显示”,但至少“1920x1200 (16:10)”显示为分辨率之一。但是当我选择它并单击“应用”时,Ubuntu 实际上并没有改变分辨率(但它问我是否要保留我的“新”分辨率)。

顺便说一句,请注意我使用的“默认”,其中大多数建议注释都将“VGA”或“HDMI”或类似的内容放在... xrand 不识别任何这些东西。它真的不知道我的显示器是什么,也是我似乎能够将其称为“默认”的唯一方式。

我不知道还能做什么。从昨天开始,我一直在尝试解决这个问题,但似乎没有任何效果。我尝试编写 xorg.conf 文件只是给了我一个黑屏(并且我以“故障安全”模式启动以删除 xorg.conf)。

我已经能够制作一个不会让我的电脑变得疯狂的 xorg.conf 文件。事实上,虽然它不能解决我的问题,但它确实向列表中添加了更多分辨率。很明显它在做“某事”。这是xorg.conf文件:

Section "Device"
        Identifier      "Configured Video Device"
        Driver          "vesa"
EndSection

Section "Monitor"
        Identifier      "Configured Monitor"
        Modeline        "1920x1200"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
        SubSection "Display"
                Modes "1920x1200_60"
        EndSubSection
EndSection
Run Code Online (Sandbox Code Playgroud)

使用这个文件的结果是,当我启动到 Ubuntu 并转到“显示”时,我实际上看到了一个选项列表:

  • 1600x1200 (4:3)
  • 1280x1024 (5:4)
  • 1024x768 (4:3)
  • 800x600 (4:3)

所以......新选项没有任何好处,它仍然是“未知显示”。但这是我第一次得到一个没有完全控制系统的 xorg.conf 文件。我希望聪明的头脑可以将其转化为解决方案。

输出 lspci

% lspci|grep -i vga
0f:00.0 VGA compatible controller: NVIDIA Corporation GF106GL
[Quadro 2000] (rev a1)
Run Code Online (Sandbox Code Playgroud)

所以 Ubuntu 知道我有一个 Nvidia 显卡。现在我正在使用开源 X.Org Nouveau 驱动程序,但我也尝试过来自 NVidia 的二进制驱动程序。当我转到“软件和更新”程序并转到“其他驱动程序”选项卡时,Ubuntu 为我提供了开源驱动程序和各种二进制驱动程序。它提供的最新二进制驱动程序是 367.57,但它不能解决问题,也不能让 Ubuntu 将我的显示器称为“未知显示器”以外的任何东西。

Kul*_*lfy 3

答案最初发布在问题的修订版 #4中。有关更多详细信息,请参阅修订历史记录

问题解决了。这就是我所做的:我访问 NVIDIA 网站并下载了Latex Linux 驱动程序。要安装驱动程序,您不能运行 X。我不知道如何在不自动重新启动的情况下杀死 X,因此我重新启动,并在 GRUB 菜单中选择进入故障安全模式(并确保磁盘以重写方式挂载)。到达那里后,我只运行了 NVIDIA 提供的安装程序。NVIDIA 安装人员进行了硬件测试,并提出为我编写一个新xorg.conf文件。我接受了这个提议,当我重新启动时,我的屏幕工作得很好。当我转到“显示”时,现在 Ubuntu 知道我的显示器的确切品牌(不再是“未知显示”)并默认为正确的分辨率。所以最终,NVIDIA 安装程序改变了两件事:

  • 它给了我一个新的驱动程序,比 Ubuntu 可用的驱动程序更新。
  • 它给了我一个新的 xorg.conf 文件。

我不知道这两个人中哪一个负责修复我的电脑,但现在我关心的是我的屏幕不再让我头疼。