[zhuan]Ubuntu下外接显示器双屏显示的方法

时间:2024-02-19 22:14:29
Ubuntu 8.04 设置笔记本电脑双显示器

目录:
1、设置显示分辨率及 xrandr 介绍
2、GNOME下切换双屏的方法
3、关于双屏下 GNOME面板/ wine / 阿里旺旺的一些问题及解决

正文:
1、设置显示分辨率及 xrandr 介绍
   X Windows 中有一个显示分辨率的概念,在默认情况下,这个显示分辨率为 max*max ,max等于你的所有连接上的显示器中最大分辨率中的最大值。例如我的笔记本液晶屏最大分辨率为 1024*768,外接显示器最大分辨率为 1280*1024,则默认的显示分辨率为 1280*1280。如果我设置左右双屏且使用最大分辨率,那么总显示分辨率就会达到2304*1024,达到超出系统默认的大小。在这种情况下强行设置 双屏幕,就会导致 X 进入超低分辨率,结果不得不手工重设 xrog.conf 来恢复。
  为了更好检测这个问题,我们需要用到 xrandr 这个软件,xrandr系统已经自带,如果没有请安装x11-xserver-utils:sudo apt-get install x11-xserver-utils 。
  不带参数执行xrandr能够列出当前的显示设备和每个设备支持的模式。Screen代表了总显示区域,VGA代表显示器,LVDS代表笔记本液晶屏。

Screen 0: minimum 320 x 200, current 1280 x 768, maximum 1280 x 1280
VGA connected (normal left inverted right x axis y axis)
   1280x1024      75.0 +   69.8     59.9  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3  
   640x480        75.0     72.8     65.4     60.0  
   720x400        70.1  
LVDS connected 1024x768+0+0 (normal left inverted right x axis y axis) 246mm x 184mm
   1024x768       50.0*+   60.0     40.0  
   800x600        60.3  
   640x480        60.0     59.9  

  系统默认显示分辨率为 1280x1280,而在左右扩展双屏情况下VGA和LVDS支持的最小分辨率加在一起都超过这个数字,当然会导致 X 进入超低分辨率了。如果感兴趣,可以用以下命令尝试把外接显示器打开并设置为右侧扩展屏幕(不用sudo)来验证一下: xrandr --output VGA --auto --right-of LVDS
系统会出错,提升说屏幕大小超出限制。

  解决方法:手工修改xorg.conf,在Section "Screen"中添加一行 Virtual 2304 1024

Section "Screen"
   Identifier "Default Screen"
   Monitor "Configured Monitor"
   Device "Configured Video Device"
   SubSection "Display"
      Virtual 2304 1024
   EndSubSection
EndSection

注意:Ubuntu 8.04中的xorg.conf已经非常精简,Subsection "Display" 可能要自己添加,别忘记 EndSubSection

我设置好以后的xrandr命令输入如下:
$ xrandr
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 2304 x 1024
VGA connected (normal left inverted right x axis y axis)
....
LVDS connected 1024x768+0+0 (normal left inverted right x axis y axis) 246mm x 184mm
....

  现在应该没问题了,用刚才的命令打开双屏后,
$ xrandr
Screen 0: minimum 320 x 200, current 2304 x 1024, maximum 2304 x 1024
VGA connected 1280x1024+1024+0 (normal left inverted right x axis y axis) 340mm x 270mm
...
LVDS connected 1024x768+0+0 (normal left inverted right x axis y axis) 246mm x 184mm
...

  其实这个显示分辨率完全可以设置高一些,比如我就设置成4000 x 2000,如果连接到最大分辨率为1920x1200的外接显示器,也不用重新设置 xorg.conf 了。

  xrandr 命令行可以很方便地切换双屏,常用方式如下,其他的可以自己探索:
xrandr --output VGA --same-as LVDS --auto
         打开外接显示器(最高分辨率),与笔记本液晶屏幕显示同样内容(克隆)
xrandr --output VGA --same-as LVDS --mode 1024x768
         打开外接显示器(分辨率为1024x768),与笔记本液晶屏幕显示同样内容(克隆)
xrandr --output VGA --right-of LVDS --auto
         打开外接显示器(最高分辨率),设置为右侧扩展屏幕
xrandr --output VGA --off
          关闭外接显示器
xrandr --output VGA --auto --output LVDS --off
        打开外接显示器,同时关闭笔记本液晶屏幕(只用外接显示器工作)
xrandr --output VGA --off --output LVDS --auto
        关闭外接显示器,同时打开笔记本液晶屏幕 (只用笔记本液晶屏)
(最后两种情况请小心操作,不要误把两个屏幕都关掉了。。。。)

2、GNOME下切换双屏的方法
   用命令行毕竟不方便,幸好我们还有许多 X 下的工具可用:
  GNOME 中自带的“监视器屏幕分辨率设置”软件功能很强大(系统->首选项->屏幕分辨率), 打开和关闭第二个监视器的办法是调整它的分辨率,取消“克隆”就可以设置成扩展屏幕,还可以通过拖动图标位置调整双屏时两个屏幕的相对位置。
     Image
  grandr,则是一个图形界面的xrandr前端,功能与前一个软件各有千秋。安装方法:sudo apt-get install grandr
     Image
   另外还有两个可以添加到GNOME面板上的快速切换分辨率(但不能切换双屏)的插件,分别是 gnome-randr-applet 和 resapplet,如果你需要可以尝试一下。
   对于 Nvidia显卡,据说可以安装 nvidia-settings (sudo apt-get install nvidia-settings),但我没试验过。

3、关于双屏下 GNOME面板/ wine / 阿里旺旺的一些问题及解决
   右侧扩展屏幕时,GNOME面板会自动跑到外接显示器上去,可以通过拖动把它放回到笔记本液晶屏上来。
    发现一个有趣的现象,用wine执行的程序,似乎只能在最初显示的那个屏幕上显示,拖到另外一个屏幕上就无法正常渲染了。
    关于在双屏情况下使用阿里旺旺5.7,有一个注意事项,启动扩展双屏后,再启动阿里旺旺会看不到图标,在托盘区只看到一个空白的图标,无法启动菜单,所以 最好先启动阿里旺旺,然后再启动扩展双屏。(如果已经启动了双屏,那么可以先把双屏模式变成非扩展模式,然后启动旺旺,再打开扩展模式即可)。命令如下:
xrandr --output VGA --same-as LVDS
启动旺旺
xrandr --output VGA --right-of LVDS
 
 
   

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

  • TA的每日心情
    擦汗
    2011-11-22 14:56:59

签到天数: 13 天

[LV.3]偶尔看看II

帖子
2524
积分
4462

小鱼管理员 灌水能手

沙发
 
发表于 2010-1-27 10:48:01
Dual Display,Ubuntu下实现双显示器 2008-10-24
google关键字:ubuntu 双显示器 ati
来源:点击进入
2008-10-24 10:55


http://thatssky.spaces.live.com/Blog...FC00!507.entry


脑袋又开始发热,不过还是很爽滴,尽管两个显示器分辨率差别很大,但从此查文档写东西窗口翻来覆去的日子过去了。这里记录一下在Ubuntu下面设置双显示器的配置文件,xorg.conf。

我的配置文件是针对笔记本单显卡的,我的显卡是Ati的。不过双显卡的类似,举一反三,这里放的只是需要改动的段落。


Section "Device"
Identifier "ATI"
Driver "ati"
Screen 0
BusID "PCI:1:0:0"
EndSection

Section "Device"
Identifier "Card1"
Driver "ati"
Screen 1
BusID "PCI:1:0:0"
EndSection

Section "Monitor" #对外置的显示器新加的,原来的不变
Identifier "MonExt"
Option "DPMS"
EndSection

Section "Screen" #对外置的显示器新加的,原来的不变
Identifier "Screen1"
Device "Card1"
Monitor "MonExt"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection

Section "ServerLayout"
Identifier "DualHead"
Screen "Default Screen" 0 0
Screen "Screen1" RightOf "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
EndSection

#如果只是扩展屏幕,也就是窗口可以拖到另外一个屏幕,就加上下面这段;如果需要两个独立的显示就去掉。
Section "ServerFlags"
Option "Xinerama" "true"
EndSection

刚刚登录Windows, 发现Ati的win下面的驱动已经内置了多显示器支持, Extend模式.
 
 
   

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

  • TA的每日心情
    擦汗
    2011-11-22 14:56:59

签到天数: 13 天

[LV.3]偶尔看看II

帖子
2524
积分
4462

小鱼管理员 灌水能手

板凳
 
发表于 2010-1-27 10:48:11
Ubuntu下外接显示器双屏显示的方法 2008-05-10
google关键字:ubuntu 外接显示器
来源:点击进入
2008-05-10  来源: linuxidc

由于我用的是笔记本.屏幕有点少.所以有的时候想外接显示器来显示更大的区域,如果是在Windows下那可是很方便的事情.只需要按一下Fn F4就可以了.但现在在Ubuntu Linux下.就变成了一件有点麻烦的事情了,以前没找到好的方法,现在参考了一些文档,再加上804对我的本本的硬件可以说是完全兼容,所以现在要实现 这个功能也是一件很容易的事情了.

http://www.thinkwiki.org/wiki/Xorg_RandR_1.2

上面的是参考文档,虽然是全部是E文,但意思也不是很难理解,仔细看了几遍,针对我的硬件的情况,几条命令就配置好了!

首先把显示器接到VGA口上现开机(如果已经进入系统了那就reboot一下)

这时候应该外接的显示器跟本本的屏幕是镜像关系的.

然后在终端下输入命令: sudo dpkg-reconfigure -phigh xserver-xorg 运行该命令后会自动对 /etc/X11/xorg.conf 的文件进行backup,备份文件为加上当时时间为文件的后缀,如果将来有需要的可以恢复回去的.至此,在我的机器上面外接显示器基本上完成了,剩下的就 只是利用命令来对显示的效果进行控制了.

xrandr --output VGA --off(auto) :这个命令是关闭(开启)外接的显示器.

xrandr --output LVDS --off(auto) :这个命令是关闭(开启)本本的显示器.

xrandr --output VGA --auto --right-of LVDS :这个命令是令外接的VGA显示器扩展到本本的屏幕的右边,与windows下的扩展的效果是一样的.但要注意一点的就是要想外接的显示器扩展到本本屏幕 的右边必须是外接的显示器的分辨率比本本屏幕的低,否则就变成分辨率低的成扩展,无论你的命令是什么!

基本上需要用到的命令就是这些,如果还需要更深入的控制的,可以参考那个网址.