轉載地址:http://i.cn.yahoo.com/shiyufeng/blog/p_40/
原文作者:Lion
Ubuntu 8.04/8.10 設置筆記本電腦雙顯示器
目錄:
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 中自帶的“監視器屏幕分辨率設置”軟件功能很強大(系統->首選項->屏幕分辨率), 打開和關閉第二個監視器的辦法是調整它的分辨率,取消“克隆”就可以設置成擴展屏幕,還可以通過拖動圖標位置調整雙屏時兩個屏幕的相對位置。
grandr,則是一個圖形界面的xrandr前端,功能與前一個軟件各有千秋。安裝方法:sudo apt-get install grandr
另外還有兩個可以添加到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