未列出屏幕分辨率1440×900

我刚买了一个新的nvidia显卡,可以在1440×900的窗口下工作(双启动设置)。 不幸的是,ubuntu无法识别我的显示器。 这是我的xrandr -q输出

Screen 0: minimum 8 x 8, current 1360 x 768, maximum 16384 x 16384 DVI-I-0 disconnected (normal left inverted right x axis y axis) DVI-I-1 disconnected (normal left inverted right x axis y axis) HDMI-0 disconnected (normal left inverted right x axis y axis) DP-0 disconnected (normal left inverted right x axis y axis) DP-1 disconnected (normal left inverted right x axis y axis) DVI-D-0 connected primary 1360x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1024x768 60.0 + 1360x768 60.0* 59.8 1152x864 60.0 800x600 72.2 60.3 56.2 680x384 60.0 59.8 640x480 59.9 512x384 60.0 400x300 72.2 320x240 60.1 1440x900_60.00 (0x1e7) 106.5MHz h: width 1440 start 1528 end 1672 total 1904 skew 0 clock 55.9KHz v: height 900 start 903 end 909 total 934 clock 59.9Hz 

我设法添加所需的分辨率(1440×900),但是当我这样做时

 xrandr --output DVI-D-0 --mode 1440x900_60.00 

我明白了

 xrandr: cannot find mode 1440x900_60.00 

Ok Mystery结束了:我将DVI电缆更换为带有vga到DVI适配器的vga电缆,突然之间,Ubuntu能够识别我的显示器并设置正确的分辨率。 也许就是这样,因为我的显示器很老了。 这绝不是对更大问题的正确答案,即无法通过xrandr设置正确的分辨率,但我会忍受它。

您需要创建一个新模式并应用它。

要按顺序执行的命令:

 cvt 1440 900 xrandr --newmode "1440x900_60" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync 

xrandr --newmode之后的行部分类似于使用cvt命令时应该得到的输出,因此将输出从“resolution_refreshRate”(此处为“1440x900_60”)点复制到+vsync点并将其添加到xrandr --newmode

然后:

 xrandr --addmode LVDS1 resolution_refreshRate (don't use speechmarks) xrandr --output LVDS1 --mode resolution_refreshRate 

如果您想要永久更改:

  • 例如,创建一个bash脚本xrandr.sh ,并将xrandr命令放入其中:

      #!/斌/庆典
     sudo xrandr --newmode“”1440x900_60“”173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync + vsync
     sudo xrandr --addmode LVDS1 1440x900_60
     xrandr  - 输出LVDS1  - 模式1440x900_60 

  • 使用chmod +x xrandr.sh使脚本可执行

  • 在短划线中搜索“启动应用程序”,运行它,并将脚本添加为启动应用程序。

现在,每次登录帐户时都会运行这些命令。

注意:我使用LVDS1作为假定的监视器名称,但是你的可能不一样。 您可以使用以下命令查找显示器名称

 xrandr | grep " connected " | awk '{ print$1 }' 

使用此程序可以为您完成以上所有操作 – 包括启动脚本。