Xinerama es una extensión del X Window System que permite utilizar dos o más monitores como si fueran un único escritorio. Actualmente el desarrollo de este proyecto se ha detenido y va a ser reemplazado por RandR (Resize and Rotate), que permite configurar dinámicamente el escritorio, a diferencia de Xinerama, con el que la configuración es estática, editando /etc/X11/xorg.conf y reiniciando el servidor X, cosa innecesaria con RandR. Pero si los drivers de nuestra tarjeta gráfica no tienen soporte para RandR tendremos que utilizar Xinerama.
Inicialmente, nuestro archivo de configuración de las X (/etc/X11/xorg.conf) contiene cuatro secciones, Device, Monitor, Screen y ServerLayout.
Section "Device" Identifier "nVidia Corporation NV44A [GeForce 6200]" Driver "nv" BusID "PCI:1:0:0" EndSection Section "Monitor" Identifier "AsusMM19SE" Option "DPMS" HorizSync 28-64 VertRefresh 43-60 EndSection Section "Screen" Identifier "Default Screen" Device "nVidia Corporation NV44A [GeForce 6200]" Monitor "Dell E228WFP" DefaultDepth 24 SubSection "Display" Modes "1280x960" EndSubSection EndSection Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" EndSection |
Una vez que modifiquemos /etc/X11/xorg.conf contendrá 2 secciones Device, Monitor y Screen, y una sección ServerLayout. Veamos cada sección por separado.
- Secciones Device:
Declaramos dos tarjetas gráficas, dos Device, con diferente Identifier:
Section "Device" Identifier "nVidia Corporation NV44A [GeForce 6200]0" Driver "nv" BusID "PCI:1:0:0" Screen 0 EndSection Section "Device" Identifier "nVidia Corporation NV44A [GeForce 6200]1" Driver "nv" BusID "PCI:1:0:0" Screen 1 EndSection
- Secciones Monitor:
Declaramos dos monitores, cada uno con su propia configuración:
Section "Monitor" Identifier "AsusMM19SE" Option "DPMS" HorizSync 28-64 VertRefresh 43-60 EndSection Section "Monitor" Identifier "Philips 107E5" Option "DPMS" HorizSync 30-60 VertRefresh 43-60 EndSection
- Secciones Screen:
Declaramos dos Screen y asignamos a cada una un monitor y una tarjeta gráfica, con la resolución adecuada según el monitor asignado:
Section "Screen" Identifier "Default Screen" Device "nVidia Corporation NV44A [GeForce 6200]0" Monitor "AsusMM19SE" DefaultDepth 24 SubSection "Display" Modes "1280x960" EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "nVidia Corporation NV44A [GeForce 6200]1" Monitor "Philips 107E5" DefaultDepth 24 SubSection "Display" Modes "1440×900" EndSubSection EndSection
- Sección ServerLayout:
Establecemos un monitor como principal y la posición relativa del otro monitor, a la izquierda (LeftOf) o a la derecha (RightOf) del principal, y activamos la opción Xinerama.
Section "ServerLayout" Identifier "Default Layout" Screen 0 "Default Screen" 0 0 Screen 1 "Screen1" LeftOf "Default Screen" Option "Xinerama" "on" Option "Clone" "on" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" EndSection
Reiniciamos las X…
# /etc/init.d/gdm restart |
… Y listo, gracias a Xinerama obtendremos un precioso escritorio horizontal que ocupa los dos monitores.