ubuntu 未知显示器 unkown display 问题解决

  • Post author:
  • Post category:其他


最近领到新台式机一台,由于是最新配置,导致显示器不能正常显示,就是不能显示高分辨率,最大只支持1024 x 768。

开始以为是显卡驱动没装好,直接上

https://01.org/linuxgraphics/downloads/2014/intelr-graphics-installer-1.0.5-linux

下载intel 显卡驱动,发现还是不行。

通过 “系统设置”  –> “详细信息” –> 可以查看 Intel Haswell Desktop 字样,其实也可以通过  hardinfo, lshw, lspci | grep VGA 等命令查询。

参考:

http://forum.ubuntu.com.cn/viewtopic.php?f=180&t=450596

最后通过完整找到如下设置高分辨率办法,可以切换到高分率,但现实效果极差!


用下面的命令可以看到显卡的信息:这边是针对1440 x 900, 1920 x 1080 道理类似




$ lspci | grep VGA




00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)








我一直以为是显卡驱动没装好,于是下载了intel显卡linux驱动的源码,并花了几天时间来编译(期间安装了N多它所依赖的包),最终还是没能装成功,还把Xorg搞挂了。无奈还重装了系统。其实intel集成显卡的驱动已经装好了,而且用命令sudo apt-get install xserver-xorg-video-intel也可以安装。




之后还在网上看到修改/etc/X11/xorg.conf之类的解决方案。我直接头大了。




最后还是找到了解决方案:xrandr命令。




首先,直接运行xrandr查看下分辨率的情况:




$ xrandr




Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 4096 x 4096




LVDS1 connected (normal left inverted right x axis y axis)




1024×600       60.0 +




800×600        60.3     56.2




640×480        59.9




VGA1 connected 1280×1024+0+0 (normal left inverted right x axis y axis) 0mm x 0mm




1024×768       60.0 *




800×600        60.3     56.2




848×480        60.0




640×480        59.9




标星号的那行就是我正在使用的分辨率。




下面用cvt命令生成一个modeline,为后续添加分辨率作准备:




$ cvt 1440 900




# 1440×900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz




Modeline “1440x900_60.00”  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync




再运行xrandr –newmode来创建一个分辨率模式,使用“Modeline”后的内容(–rmmode删除这个模式):




$ xrandr –newmode “1440x900_60.00”  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync




接着用xrandr –addmode把这个模式添加到显示器上(–delmode把这个模式从该显示器上移除):




$ xrandr –addmode VGA1 “1440x900_60.00”




最后是应用这个模式:




$ xrandr –output VGA1 –mode “1440x900_60.00”




到此,我的屏幕看上去就清爽多了。




用xrandr查看一下:




$ xrandr




Screen 0: minimum 320 x 200, current 1440 x 900, maximum 4096 x 4096




LVDS1 connected (normal left inverted right x axis y axis)




1024×600       60.0 +




800×600        60.3     56.2




640×480        59.9




VGA1 connected 1440×900+0+0 (normal left inverted right x axis y axis) 0mm x 0mm




1024×768       60.0




800×600        60.3     56.2




848×480        60.0




640×480        59.9




1440x900_60.00   59.9*




设置完后我的屏幕向左偏出了约5个像素,直接在显示器(硬件)上调就可以了。




参考:


https://wiki.ubuntu.com/X/Config/Resolution

最后,本来想到实验室找一根hdmi线来试一下,却找到一根VGA线,而志气老觉得主机上面那根VGA线接触不好,于是就顺便换了,结果就好了,显示正常!

fuck!



版权声明:本文为big_ant原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。