HOWTO: Configurar dos monitores usando xrandr a partir de un xorg.conf vacío
ÍNDICE
1. ¿A quién va dirigido este artículo?
2. Procedimiento estándar con xrandr
3. Error por resolución mayor a la soportada
4. /etc/X11/xorg.conf vacío
5. Referencias y mayor información
6. ARandR: una interfaz gráfica para XRandR
1. ¿A quién va dirigido este artículo?
En ocasiones, resulta muy práctico trabajar con dos monitores conectados al equipo a fin de distribuir las aplicaciones que estamos utilizando y tener así un mejor panorama visual.
Es común que las tarjetas de video trabajen con drivers libres, razón por la cual no siempre se dispone de las herramientas de configuración completa, al menos de forma gráfica.
Una herramienta muy útil en estos casos es xrandr, el cual permite -entre otras cosas- configurar adecuadamente el uso de dos monitores y con una sola tarjeta gráfica instalada.
Otro aspecto a considerar, es que en las versiones de (K|X)Ubuntu a partir de la 9.10 Karmic Koala no se encuentra de manera explícita la configuración gráfica del sistema como antes sí se tenía en el archivo /etc/X11/xorg.conf
Por ello, para realizar algunas configuraciones individuales y específicas es necesario "generar" este archivo primero.
2. Procedimiento estándar con xrandr
KDE ofrece una herramienta para configurar la apariencia de la pantalla: KRandr. Sin embargo, es común que las opciones para extender el escritorio no funcionen apropiadamente, e incluso que en la pestaña Múltiples Monitores aparezca el mensaje: "Este módulo es solamente para configurar sistemas donde un sólo escritorio esta esparcido en diversas pantallas. Parece que no tienes esta configuración"
Es por esto que debemos recurrir a xrandr. Lo primero, en una consola escribimos:
$ xrandrLo cual mostrará las pantallas conectadas al equipo, así como información acerca de las resoluciones soportadas y tasa de refresco. Aparecerá algo como esto:
$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 1280 x 800
VGA-0 connected 1024x768+1280+0 (normal left inverted right x axis y axis) 312mm x 234mm
1024x768 85.0*+ 85.0* 75.0
1152x864 75.0
800x600 85.1 75.0
640x480 85.0 59.9
720x400 70.1
LVDS connected 1280x800+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1280x800 60.0 +
1280x720 59.9
1152x768 59.8
1024x768 60.0 59.9*
800x600 60.3 59.9
640x480 59.9 59.4Esta información es importante para lo que sigue, especialmente las resoluciones para cada monitor.
Ahora se configura el extender el escritorio y posicionar adecuadamente ambos monitores, así por ejemplo el comando:
$ xrandr --output LVDS --mode 1280x800 --output VGA-0 --mode 1024x768 --right-of LVDS... colocará el monitor conectado a la salida VGA (con una resolución de 1024x768) a la derecha del que está ubicado en la salida LVDS (con resolución 1280x800).
Si todo anda bien, la primer pantalla tendrá el escritorio tal y como lo hemos configurado, y el segundo monitor el fondo de pantalla genérico del tema KDE por defecto y sería posible arrastrar ventanas de un lado a otro, visualizando todo con las resoluciones establecidas.
3. Error por resolución mayor a la soportada
Pero, también puede darse que en consola aparezca un error como el siguiente:
$ xrandr --output LVDS --mode 1280x800 --output VGA-0 --mode 1024x768 --right-of LVDS
xrandr: screen cannot be larger than 1280x800 (desired size 2304x800)En este caso, es necesario "crear" un escritorio virtual más grande para que abarque las resoluciones conjuntas de ambos monitores.
Se debe modificar el archivo /etc/X11/xorg.conf, de forma gráfica sería:
$ kdesudo kate /etc/X11/xorg.confO por consola:
$ sudo nano /etc/X11/xorg.confSe ubica la siguiente sección, y se añade la línea resaltada (tomando como ejemplo la resolución deseada indicada antes):
Section "Screen"
Identifier "Default Screen"
Device "Intel"
Monitor "Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280×800" "1024×768" "800×600" "640×480"
###########################################################################
Virtual 2304 800 #AGREGAR ESTA LÍNEA
###########################################################################
EndSubSection
EndSectionLas demás líneas se muestran como referencia, es posible que el archivo en cada equipo tenga información distinta.
Es necesario reiniciar las X (o el modo gráfico), simplemente reiniciando el equipo, aunque se puede también ejecutar en consola:
$ sudo /etc/init.d/kdm restartVolviendo a la consola, ejecutamos nuevamente xrandr con los parámetros de posición/resolución deseados:
$ xrandr --output LVDS --mode 1280x800 --output VGA-0 --mode 1024x768 --right-of LVDSMostrando esta vez el escritorio virtual extendido.
4. /etc/X11/xorg.conf vacío
En caso de que hayamos encontrado el archivo /etc/X11/xorg.conf vacío en una versión de (K|X)Ubuntu igual o más reciente que la 9.10, es necesario primeramente generar el archivo para luego añadir el parámetro de escritorio virtual.
Lo primero que se debe hacer, es abrir una TTY, ejecutando la combinación de teclas CTRL+ALT+F1, por ejemplo. Una vez ahí, y luego de loguearse, hay que detener "el entorno gráfico" de la siguiente manera:
$ sudo /etc/init.d/kdm stopAhora, se pide al sistema que genere un archivo con la configuración del modo gráfico (o servidor X):
$ sudo Xorg -configureLo anterior genera el archivo /home/usuario/xorg.conf.new el cual debe editarse.
Para abrir el archivo en modo gráfico, se ejecuta en consola:
$ kdesudo kate /home/usuario/xorg.conf.newPosiblemente sea necesario alterar o incluso suprimir parte del contenido, dependiendo de las características del equipo. No se aborda este aspecto aquí ya que excede el propósito del presente artículo.
Es necesario ahora añadir la información del escritorio virtual, tal y como se mencionó antes:
Section "Screen"
Identifier "Default Screen"
Device "Intel"
Monitor "Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280×800" "1024×768" "800×600" "640×480"
###########################################################################
Virtual 2304 800 #AGREGAR ESTA LÍNEA
###########################################################################
EndSubSection
EndSectionSe guarda y cierra el archivo. A continuación, el mismo se copia en el directorio donde el sistema lee la configuración del entorno gráfico:
$ sudo cp -r /home/usuario/xorg.conf.new /etc/X11/xorg.confAhora hay que hacer efectiva esta configuración. Se abre una TTY (CTRL+ALT+F1 por ejemplo) y se detiene el entorno gráfico:
$ sudo /etc/init.d/kdm stopAhora se solicita configurar de nuevo:
$ sudo dpkg-reconfigure xserver-xorgSe reinicia el equipo:
$ sudo rebootPosteriormente, iniciando sesión, se invoca nuevamente a xrandr con los parámetros deseados:
$ xrandr --output LVDS --mode 1280x800 --output VGA-0 --mode 1024x768 --right-of LVDSTeniendo de esta forma un escritorio extendido en dos monitores.
NOTA. Puede resultar útil escribir un script que detecte en el arranque del sistema si están ambos monitores conectados, y ejecute el comando de xrandr con los parámetros establecidos.
5. Referencias y mayor información
$ man xrandrhttp://crysol.org/dos_monitores_con_xrandr
http://wiki.debian.org/XStrikeForce/HowToRandR12
http://doarmo.netne.net/2009/11/27/dos-monitores-en-kde-con-xrandr/
6. ARandR: una interfaz gráfica para XRandR
Existen varias interfaces gráficas (frontends) para XRandR, una de ellas es ARandR:

( http://screenshots.debian.net/screenshots/a/arandr/2238_large.png )
Con dicha interfaz gráfica es fácil posicionar la imagen de un monitor en relación a otros (arriba, abajo, izquierda, derecha), rotar la imagen (giros de 90 grados, hacia la izquierda o a la derecha), e incluso invertirla (tipo espejo). Además es posible ajustar las resoluciones individuales de los monitores en caso de que tengan distintas medidas físicas, o proporciones. Se pueden guardar perfiles y volver a cargar, eliminando así la necesidad de volver a ajustar las preferencias elegidas.
ARandR se encuentra en los repositorios de Ubuntu ( http://packages.ubuntu.com/search?keywords=arandr ), por lo que para su instalación sólo basta ejecutar:
$ sudo apt-get install arandry posteriormente se ejecuta desde el menú de configuraciones, o desde la línea de comandos. Más información en el sitio oficial: http://christian.amsuess.com/tools/arandr/ .