Este sistema de ventanas usa el modelo cliente-servidor. Las aplicaciones o clientes solicitan mostrar algo por pantalla y el servidor les responde. También funciona igual cuando desean emplear el teclado o el ratón.
Pueden existir varios servidores X en una misma máquina. Un ejemplo podría ser el de los monitores duales, o una aplicación de escritorio virtual tipo VNC.
Los servidores de ventanas usan entornos gráficos como pueden ser KDE o GNOME y estos dan el decoro a las ventanas y se encargan de solicitar los recursos al servidor X.
Todos los componentes de entrada y salida del servidor X, deberán estar en el archivo de configuración que se encuentra en la ruta /etc/X11/xorg.conf
Este archivo puede ser configurado automáticamente en Ubuntu mediante el comando:
- sudo dpkg-reconfigure xserver-xorg
Por ello explicaré como configurar este archivo manualmente y como configurar el servidor Xorg para poner dos monitores conectados a dos tarjetas de vídeo diferentes. Si este no fuera tu caso se explicará además como configurarlo para 1.
El primer paso de todos es abrir el archivo de configuración. Para ello ejecutaremos en el terminal lo siguiente:
- sudo gedit /etc/X11/xorg.conf
Para empezar seleccionaremos todo lo que haya y lo borraremos pues enseñaremos a configurarlo a mano desde el principio:
Lo primero de todo será añadir el teclado. Para ello añadiremos al fichero lo siguiente:
Ya tenemos el teclado. El siguiente y más usado sistema de entrada es el ratón. Para añadir el ratón incluiremos el siguiente código al archivo abierto:
Hasta ahora todo va bien. Tenemos configurado el teclado y el ratón como dispositivos de entrada pero nos faltan los de salida.
Para este paso necesitaremos ejecutar en un terminal el siguiente comando:
Lo primero de todo será añadir el teclado. Para ello añadiremos al fichero lo siguiente:
##TecladoEl XkbLayout sería "es" porque nuestro teclado tiene Ñ. Si tuvieras otro teclado aquí tendrías que poner en , de, fr o el del lenguaje de tu teclado.
Section "InputDevice"
Identifier "Teclado"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105″
Option "XkbLayout" "es"
EndSection
##Teclado
Ya tenemos el teclado. El siguiente y más usado sistema de entrada es el ratón. Para añadir el ratón incluiremos el siguiente código al archivo abierto:
##RatónEste ratón, es el típico que se conecta por el puerto PS2, es decir la entrada circular que normalmente tiene color verde. Si lo conectaras por USB tendrías que modificar el protocolo por el de USB.
Section "InputDevice"
Identifier "Raton"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2″
Option "Emulate3Buttons" "true"
EndSection
##Ratón
Hasta ahora todo va bien. Tenemos configurado el teclado y el ratón como dispositivos de entrada pero nos faltan los de salida.
Para este paso necesitaremos ejecutar en un terminal el siguiente comando:
- lspci
El comando nos mostrará la lista de dispositivos que tenemos conectados a nuestro ordenador:
Tendremos que buscar los dispositivos VGA, es decir, las tarjetas gráficas. En mi caso tengo una AGP Radeon 9200 y una PCI Radeon 7000 (no os riáis de mi por tener un pc viejo)
Tenemos ahora dos maneras de configurarlo. Si sólo tienes una tarjeta gráfica pero esta tiene 2 salidas como mi Radeon 9200 deberás añadir al archivo:
Aquí ya dependerá mucho de vosotros. Existen multitud de tarjetas gráficas y dependiendo de la vuestra tendréis que tocar:
El driver: Como mi tarjeta es antigua pongo el driver ati que esta desarrollado por canonical. Este controlador es libre y soporta todas las ATI Radeon y modelos anteriores hasta la Radeon 9250. Si tu modelo fuese superior tendrías que escoger el controlador fglrx para ello solo tendrías que modificar la palabra ati por fglrx.
Si tu tarjeta fuese NVIDIA tendrías que poner la palabra nv para el driver. Si fuese intel tendrias que poner intel. Si tuvieras algún problema puedes emplear el driver vesa que es libre y soporta la gran mayoría de tarjetas aunque su rendimiento gráfico no sea el óptimo
El Bus ID aunque la tarjeta sea AGP tiene que ser PCI seguido de los números que te aparezcan en el comando lspci. En mi caso 1:0:0 para la salida VGA y 1:0:1 para la salida S-Video. Si usamos la tarjeta secundaria entonces pondríamos PCI:0:9:0
Estos números pueden cambiar pero podéis verlos sin ningún problema en el terminal por lo que no debéis preocuparos.
Si sólo tuvieseis un monitor entonces solo deberéis poner:
Tendremos que buscar los dispositivos VGA, es decir, las tarjetas gráficas. En mi caso tengo una AGP Radeon 9200 y una PCI Radeon 7000 (no os riáis de mi por tener un pc viejo)
Tenemos ahora dos maneras de configurarlo. Si sólo tienes una tarjeta gráfica pero esta tiene 2 salidas como mi Radeon 9200 deberás añadir al archivo:
##Radeon 9200 VGASi quisiéramos emplear la tarjeta PCI entonces:
Section "Device"
Identifier "Salida1"
Driver "ati"
BusID "PCI:1:0:0"
EndSection
##Radeon 9200 VGA
##Radeon 9200 S-Video
Section "Device"
Identifier "Salida2"
Driver "ati"
BusID "PCI:1:0:1"
EndSection
##Radeon 9200 S-Video
##Radeon 9200 VGA
Section "Device"
Identifier "Salida1"
Driver "ati"
BusID "PCI:1:0:0"
EndSection
##Radeon 9200 VGA
##Radeon 7000 VGA
Section "Device"
Identifier "Salida2"
Driver "ati"
BusID "PCI:0:9:0"
EndSection
##Radeon 7000 VGA
Aquí ya dependerá mucho de vosotros. Existen multitud de tarjetas gráficas y dependiendo de la vuestra tendréis que tocar:
El driver: Como mi tarjeta es antigua pongo el driver ati que esta desarrollado por canonical. Este controlador es libre y soporta todas las ATI Radeon y modelos anteriores hasta la Radeon 9250. Si tu modelo fuese superior tendrías que escoger el controlador fglrx para ello solo tendrías que modificar la palabra ati por fglrx.
Si tu tarjeta fuese NVIDIA tendrías que poner la palabra nv para el driver. Si fuese intel tendrias que poner intel. Si tuvieras algún problema puedes emplear el driver vesa que es libre y soporta la gran mayoría de tarjetas aunque su rendimiento gráfico no sea el óptimo
El Bus ID aunque la tarjeta sea AGP tiene que ser PCI seguido de los números que te aparezcan en el comando lspci. En mi caso 1:0:0 para la salida VGA y 1:0:1 para la salida S-Video. Si usamos la tarjeta secundaria entonces pondríamos PCI:0:9:0
Estos números pueden cambiar pero podéis verlos sin ningún problema en el terminal por lo que no debéis preocuparos.
Si sólo tuvieseis un monitor entonces solo deberéis poner:
##Radeon 9200 VGA
Section "Device"
Identifier "Salida1"
Driver "ati"
BusID "PCI:1:0:0"
EndSection
##Radeon 9200 VGA
Ahora sólo nos queda configurar los monitores. Para ello añadimos al archivo:
##Monitor 19 pulgadasSi sólo tuvierais un monitor entonces debería quedar así:
Section "Monitor"
Identifier "Monitor1"
Option "DPMS"
HorizSync 30-81
VertRefresh 56-75
EndSection
##Monitor 19 pulgadas
##Monitor 17 pulgadas
Section "Monitor"
Identifier "Monitor2"
Option "DPMS"
HorizSync 30-81
VertRefresh 56-75
EndSection
##Monitor 17 pulgadas
##Monitor 19 pulgadas
Section "Monitor"
Identifier "Monitor1"
Option "DPMS"
HorizSync 30-81
VertRefresh 56-75
EndSection
##Monitor 19 pulgadas
Bien. Ahora ya tenemos casi todo. Sólo nos falta configurar las resoluciones de las pantallas y el color de salida. Para ello añadimos:
##PrincipalSi sólo tuviésemos un monitor entonces:
Section "Screen"
Identifier "Principal"
Device "Salida1"
Monitor "Monitor1"
DefaultDepth 16
SubSection "Display"
Depth 16
Modes "1280x1024" "1152x864" "1024x768" "800x600" "720x400" "640x480"
EndSubSection
EndSection
##Principal
##Secundario
Section "Screen"
Identifier "Secundario"
Device "Salida2"
Monitor "Monitor2"
DefaultDepth 16
SubSection "Display"
Depth 16
Modes "1280x1024" "1152x864" "1024x768" "800x600" "720x400" "640x480"
EndSubSection
EndSection
##Secundario
##Principal
Section "Screen"
Identifier "Principal"
Device "Salida1"
Monitor "Monitor1"
DefaultDepth 16
SubSection "Display"
Depth 16
Modes "1280x1024" "1152x864" "1024x768" "800x600" "720x400" "640x480"
EndSubSection
EndSection
##Principal
Por último configuramos el orden de nuestras pantallas. Para esto añadimos:
Section "ServerLayout"Si sólo tuviésemos un monitor:
Identifier "Default Layout"
Screen 0 "Principal"
Screen 1 "Secundario" RightOf "Principal"
InputDevice "Teclado"
InputDevice "Raton"
Option "xinerama" "off"
Option "clone" "off"
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
Section "DRI"
Mode 0666
EndSection
Section "ServerLayout"Para terminar pulsa guardar y reinicia tu ordenador.
Identifier "Default Layout"
Screen 0 "Principal"
InputDevice "Teclado"
InputDevice "Raton"
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
Section "DRI"
Mode 0666
EndSection
Si todo funcionó bien deberías tener los dos monitores funcionando correctamente y con aceleración gráfica. Si sólo tuvieras un monitor este debería funcionar correctamente.
Nota: Esta guía sirve para tarjetas antiguas. Actualmente los drivers propietarios para linux configuran automáticamente el servidor Xorg para poder emplear monitores duales. En cualquier caso esta es una buena guía para conocer como funciona el archivo de configuración del servidor X.
No hay comentarios:
Publicar un comentario