|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jan 2006
Messaggi: 1525
|
[Tutorial] Doppio monitor con 2 schede video
In questi giorni ho provato a creare una configurazione con doppio monitor sulla mia linux box e dopo varie ricerche in rete ho raccolto varie informazioni frammentate e ridondanti; allorche' mi sono deciso a scrivere questa mini-guida per facilitare un po' le cose ai posteri
![]() Innanzitutto esistono due principali metodi per ottenere un dual head: 1- avendo una sola scheda video con 2 o piu' uscite; 2- avendo fisicamente piu' schede video installate nel sistema. Nel primo caso si passa attraverso i driver di dette schede, siano nvidia oppure ati, che vengono forniti di apposite utility per la configurazione; per esperienza personale posso citare ad esempio "NVIDIA X Server Settings", che permette di fare tutto attraverso una comoda gui ed alcuni colpi di mouse. Nel secondo caso invece si deve configurare a manina il server X, piu' precisamente il famigerato file xorg.conf, per istruirlo a dovere su come utilizzare le schede ed i relativi monitor; ovviamente qui si trattera' il primo caso... ![]() Prima di cominciare un paio di avvertimenti: 1- fate una copia del file xorg.conf attuale in un posto sicuro per i casi di emergenza; 2- considero scontato il fatto che l'attuale configurazione di X sia funzionante; 3- andando a modificare i refresh rate del monitor ed altre cosucce alla cavolo rischiate di fulminare il monitor o peggio, quindi OCIO! 4- considero scontato il fatto che si abbia un minimo di dimestichezza con la temuta linea di comando ![]() Bene, ora andiamo a cominciare: 1- fate una copia del file /etc/X11/xorg.conf (si' lo so che l'ho gia' detto ![]() 2- date un Codice:
lspci 3- ad esempio io ho ottenuto: Codice:
........... 00:12.0 VGA compatible controller: nVidia Corporation GeForce 7050 PV / nForce 630a (rev a2) ........... 01:0a.0 VGA compatible controller: 3dfx Banshee (rev 3) ........... 4- ora bisogna prendere nota del valore identificativo delle due schede: Codice:
nvidia 00:12.0 3dfx 01:0a.0 Codice:
nvidia 00:12.0 -> 00:18:0 3dfx 01:0a.0 -> 01:10:0 ![]() 5- ora bisogna metter mano ad xorg.conf, che dovrebbe essere qualcosa del genere: Codice:
# nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 1.0 (buildmeister@builder3) Wed Jun 13 18:39:30 PDT 2007 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" RgbPath "/usr/lib/X11/rgb" EndSection Section "Module" Load "dbe" Load "extmod" Load "type1" Load "freetype" Load "glx" EndSection Section "InputDevice" # generated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" Option "XkbLayout" "gb" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 30.0 - 110.0 VertRefresh 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "UseEdid" "False" Option "RenderAccel" "True" Option "AllowGLXWithComposite" "True" Option "AddARGBGLXVisuals" "True" SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection # Option "TwinView" # Option "MetaModes" "1600x1200 1024x768" # Option "TwinViewOrientation" "RightOf" # LeftOf RightOf Above Below Clone EndSection Section "Extensions" Option "Composite" "Enable" EndSection "ServerLayout" che definisce il layout globale dei monitor "Monitor" che definisce i parametri di funzionamento del monitor "Device" che definisce i parametri di funzionamento della scheda video "Screen" che definisce il funzionamento in acoppiata di scheda + monitor 6- la prima cosa da fare e' specificare nella sezione "Device" il BusID della scheda precedentemente ricavato, nel mio caso sarebbe: Codice:
Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "PCI:0:18:0" EndSection Codice:
Section "Monitor" Identifier "Monitor1" VendorName "Unknown" ModelName "Unknown" HorizSync 30.0 - 110.0 VertRefresh 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device1" Driver "vesa" VendorName "3dfx" BusID "PCI:1:10:0" EndSection Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "800x600" "640x480" EndSubSection EndSection di refresh del monitor onde evitare fumate nere di BusID della scheda video onde evitare schermate nere sul monitor 8- come avete notato per la mia 3dfx ho usato il driver vesa, poco performante, ma praticamente universale per qualsiasi scheda usiate; cio' non toglie che se avete i driver specifici per la vostra scheda correttamente installati sarebbe cosa buona e giusta usare proprio quelli ![]() 9- l'ultimo passo e' definire il layout globale che dovranno avere i due monitor, modificando la sezione "ServerLayout": Codice:
Section "ServerLayout" Identifier "Layout0" Screen "Screen0" Screen "Screen1" RightOf "Screen0" # Option "Xinerama" "on" Option "Clone" "on" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection 11- dopo si specifica la disposizione fisica che hanno i monitor sulla vostra scrivania, che possono essere "LeftOf" "RightOf" "Above" "Below" "Relative" 12- le altre due opzioni, di cui una commentata, definiscono il comportamento del desktop xinerama: spalma un unico desktop sui due monitor Clone: crea un secondo desktop indipendente dal primo 13- bene, siamo alla frutta ed ecco un bel riepilogo del mio xorg.conf: Codice:
# nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 1.0 (buildmeister@builder58) Thu Jun 5 00:08:24 PDT 2008 Section "ServerLayout" Identifier "Layout0" Screen "Screen0" Screen "Screen1" RightOf "Screen0" # Option "Xinerama" "on" Option "Clone" "on" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" RgbPath "/usr/lib/X11/rgb" EndSection Section "Module" Load "dbe" Load "extmod" Load "type1" Load "freetype" Load "glx" EndSection Section "InputDevice" # generated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" Option "XkbLayout" "gb" EndSection #--------------------------------------------------------nvidia Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 30.0 - 110.0 VertRefresh 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BusID "PCI:0:18:0" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "UseEdid" "False" Option "RenderAccel" "True" Option "AllowGLXWithComposite" "True" Option "AddARGBGLXVisuals" "True" SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "800x600" "640x480" EndSubSection EndSection Section "Extensions" Option "Composite" "Enable" EndSection #--------------------------------------------------------3dfx Section "Monitor" Identifier "Monitor1" VendorName "Unknown" ModelName "Unknown" HorizSync 30.0 - 110.0 VertRefresh 75.0 Option "DPMS" EndSection Section "Device" Identifier "Device1" Driver "vesa" VendorName "3dfx" BusID "PCI:1:10:0" EndSection Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Monitor1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "800x600" "640x480" EndSubSection EndSection ![]() Spero che questo post possa essere di aiuto, alla prossima ![]()
__________________
-)(- debian -)(- |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2006
Messaggi: 1525
|
Post di servizio.
__________________
-)(- debian -)(- |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jun 2008
Città: Verona
Messaggi: 68
|
Complimenti per il lavoro!
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:02.