Guía de configuración del Servidor X
1.
¿Qué es el Servidor de Ventanas X?
Entorno Gráfico vs Línea de Órdenes
El usuario medio puede tener miedo al pensar que va a tener que
introducir órdenes. ¿Por qué no iba a ser capaz de comenzar su camino
a través de la libertad que proporciona Gentoo (y Linux en general)?
Bien, desde luego ¡será capaz de hacer esto!. Linux ofrece una amplia
variedad de llamativos interfaces de usuarios y entornos los cuales
pueden ser instalados sobre su instalación actual.
Esta es una de las mayores sorpresas que se llevan los nuevos
usuarios: un interfaz gráfico de usuario no es nada más que una
aplicación ejecutándose sobre su sistema. No es parte del
núcleo de Linux o de nada interno al sistema. Es una potente
herramienta que activa completamente las habilidades gráficas de su
sistema.
Puesto que los estándares son importantes, un estándar para dibujar y
mover ventanas en una pantalla, interactuando con el usuario a través
del ratón, el teclado y otros aspectos básicos también importantes han
sido creados y denominados Sistema de Ventanas X (X Window
System), abreviado normalmente como X11 o solamente
X. Es utilizado en Unix, Linux y sistemas operativos basados en
Unix a en todo el mundo.
La aplicación que proporciona a los usuarios de Linux la posibilidad
de ejecutar interfaces gráficos de usuario y que utiliza el estándar
X11 es Xorg-X11, una bifurcación del proyecto XFree86. XFree86 ha
decidido utilizar una licencia que puede no ser compatible con la
licencia GPL, por tanto, se recomienda el empleo de Xorg. El árbol
oficial de Portage no proporcionará el paquete de XFree86 nunca más.
El proyecto X.org
El proyecto X.org ha ha creado
y mantiene una implementación de código abierto, libre y
redistribuible del sistema X11. Es una infraestructura de escritorio
basada en X11 de código abierto.
Xorg proporciona una interfaz entre su hardware y el software gráfico
que quiera ejecutar. Además, Xorg esta completamente preparado para
el trabajo en red, esto significa que es capaz de ejecutar una
aplicación en un sistema mientras la esta viendo en otro sistema
diferente.
2.
Instalando Xorg
Antes de instalar Xorg, necesitará preparar su sistema para ello.
En primer lugar configuraremos el núcleo para que soporte los
dispositivos de entrada y tarjetas de vídeo. Entonces prepararemos
/etc/portage/make.conf de forma que los drivers y
paquetes necesarios de Xorg packages sean construidos e instalados.
Soporte para los controladores de entrada
Por defecto, Xorg usa evdev, un controlador de entrada
genérico. Necesitará activar el soporte de evdev cambiando la
configuración de su núcleo. (Lea la Guía de Configuración del
Núcleo si no sabe cómo configurar su núcleo.
Listado de Código 2.1: Activando evdev en el núcleo |
Device Drivers --->
Input device support --->
<*> Event interface
|
Ajuste de modo en el núcleo
Los controladores de vídeo de código abierto modernos dependen
del ajuste de modo del núcleo (kernel modesetting, KMS). KMS
ofrece un arranque gráfico mejorado con menor parpadeo, mayor
rapidez en el cambio de usuario, una consola framebuffer
integrada, mejora en el cambio de la consola a Xorg y otras
características. KMS puede tener conflictos con controladores
framebuffer originales, los cuales deben permanecer
desactivados en la configuración de su núcleo.
En primer lugar, prepare su núcleo para KMS. Necesitará realizar
este paso independientemente del controlador de vídeo Xorg que
vaya a usar.
Listado de Código 2.2: Configurando los framebuffers |
Device Drivers --->
Graphics support --->
Support for frame buffer devices --->
Console display driver support --->
<*> Framebuffer Console Support
|
A continuación, configure su núcleo para usar el controlador KMS
adecuado a su tarjeta de vídeo. Intel, nVidia y AMD/ATI son las
tarjetas más comunes, por lo tanto siga el listado de abajo para
su tarjeta.
Para tarjetas Intel:
Listado de Código 2.3: Ajustes para Intel |
Device Drivers --->
Graphics support --->
/dev/agpgart (AGP Support) --->
<*> Intel 440LX/BX/GX, I8xx and E7x05 chipset support
Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
<*> Intel 8xx/9xx/G3x/G4x/HD Graphics
[*] Enable modesetting on intel by default
|
Para tarjetas nVidia:
Listado de Código 2.4: Ajustes para nVidia |
Device Drivers --->
Graphics support --->
Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
<*> Nouveau (nVidia) cards
|
Para las nuevas tarjetas AMD/ATI
(RadeonHD 2000 y posteriores),
necesitará hacer emerge de radeon-ucode o
linux-firmware. Una vez haya instalado uno de estos paquetes,
configure su núcleo tal y como se muestra a continuación:
Listado de Código 2.5: Ajustes para AMD/ATI |
Device Drivers --->
Generic Driver Options --->
[*] Include in-kernel firmware blobs in kernel binary
(radeon/R600_rlc.bin radeon/R700_rlc.bin) External firmware blobs
(radeon/CEDAR_me.bin radeon/CEDAR_pfp.bin radeon/CEDAR_rlc.bin
radeon/CYPRESS_me.bin radeon/CYPRESS_pfp.bin radeon/CYPRESS_rlc.bin
radeon/JUNIPER_me.bin radeon/JUNIPER_pfp.bin radeon/JUNIPER_rlc.bin
radeon/REDWOOD_me.bin radeon/REDWOOD_pfp.bin
radeon/REDWOOD_rlc.bin) External firmware blobs
(radeon/PALM_me.bin radeon/PALM_pfp.bin radeon/SUMO2_me.bin
radeon/SUMO2_pfp.bin radeon/SUMO_me.bin radeon/SUMO_pfp.bin
radeon/SUMO_rlc.bin) External firmware blobs
(radeon/BARTS_mc.bin radeon/BARTS_me.bin radeon/BARTS_pfp.bin
radeon/BTC_rlc.bin radeon/CAICOS_mc.bin radeon/CAICOS_me.bin
radeon/CAICOS_pfp.bin CAYMAN_mc.bin
CAYMAN_me.bin CAYMAN_pfp.bin CAYMAN_rlc.bin radeon/TURKS_mc.bin
radeon/CAICOS_pfp.bin radeon/CAYMAN_mc.bin radeon/CAYMAN_me.bin
radeon/CAYMAN_pfp.bin radeon/CAYMAN_rlc.bin radeon/TURKS_mc.bin
radeon/TURKS_me.bin radeon/TURKS_pfp.bin) External firmware blobs
(radeon/ARUBA_me.bin radeon/ARUBA_pfp.bin radeon/ARUBA_rlc.bin)
External firmware blobs
(radeon/PITCAIRN_ce.bin radeon/PITCAIRN_mc.bin radeon/PITCAIRN_me.bin
radeon/PITCAIRN_pfp.bin radeon/PITCAIRN_rlc.bin radeon/TAHITI_ce.bin
radeon/TAHITI_mc.bin radeon/TAHITI_me.bin radeon/TAHITI_pfp.bin
radeon/TAHITI_rlc.bin radeon/VERDE_ce.bin radeon/VERDE_mc.bin
radeon/VERDE_me.bin radeon/VERDE_pfp.bin radeon/VERDE_rlc.bin)
External firmware blobs
(/lib/firmware/) Firmware blobs root directory
Device Drivers --->
Graphics support --->
<*> Direct Rendering Manager --->
<*> ATI Radeon
[*] Enable modesetting on radeon by default
|
Nota:
Las tarjetas Radeon antiguas (series X1900 y anteriores) no necesitan
el paquete radeon-ucode ni ninguna otra configuración de
firmware. Simplemente active el Gestor de Renderizado Directo
(Direct Rendering Manager) y el ajuste de modo ATI Radeon
(ATI Radeon modesetting).
|
Ahora que ha realizado la configuración de KMS, continúe con la
preparación de /etc/portage/make.conf en la siguiente
sección.
Configuración de make.conf
Ahora que su núcleo está preparado, tendrá que configurar dos
variables importantes en el fichero
/etc/portage/make.conf antes de instalar Xorg.
La primera variable es VIDEO_CARDS. Se usa para establecer los
controladores de vídeo que tiene pensado utilizar y normalmente
está basado en el tipo de tarjeta que se tiene. Los ajustes más
comunes son nouveau para tarjetas nVidia cards o radeon
para tarjetas ATI. Ambos están bajo desarrollo muy activo y con muy
buen soporte.
Nota:
También querrá probar los controladores propietarios de nVidia
y AMD/ATI, nvidia y fglrx respectivamente. Sin
embargo, configurar estos controladores propietarios está fuera del
alcance de esta guía. Por favor, lea la Guía nVidia de Gentoo Linux
y las Preguntas de Uso Frecuente (FAQ) de ATI
en Gentoo Linux. Si no sabe qué controladores debe usar,
lea estas guías para más información.
|
El controlador intel se puede usar en ordenadores de
escritorio o portátiles con chipsets gráficos integrados de Intel
comunes.
Nota:
VIDEO_CARDS puede contener más de un controlador, cada uno
separado por un espacio.
|
La segunda variable es INPUT_DEVICES y se utiliza para
determinar qué controladores han de ser creados para los dispositivos
de entrada. En la mayoría de los casos, con configurarla con
evdev debería funcionar correctamente.
Ahora debería decidir qué controladores utilizará y agregar la
configuración necesaria al fichero
/etc/portage/make.conf:
Listado de Código 2.6: Entradas de ejemplo en make.conf |
INPUT_DEVICES="evdev synaptics"
VIDEO_CARDS="nouveau"
VIDEO_CARDS="radeon"
|
Si las configuraciones mencionadas anteriormente no le funcionan,
debería ejecutar emerge -pv xorg-drivers. Compruebe todas las
opciones disponibles y elija aquella que se ajuste a su sistema. Este
ejemplo es válido para un sistema con un teclado, ratón, touchpad
Synaptics y una tarjeta de vídeo Radeon.
Listado de Código 2.7: Mostrar todos los controladores/opciones disponibles |
# emerge -pv xorg-drivers
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] x11-base/xorg-drivers-1.9 INPUT_DEVICES="evdev synaptics
-acecad -aiptek -elographics% -fpit% -joystick -keyboard -mouse -penmount -tslib
-virtualbox -vmmouse -void -wacom"
VIDEO_CARDS="radeon -apm -ark -ast -chips -cirrus -dummy -epson -fbdev -fglrx
(-geode) -glint -i128 (-i740) (-impact) -intel -mach64 -mga -neomagic (-newport)
-nouveau -nv -nvidia -r128 -rendition -s3 -s3virge -savage -siliconmotion -sis
-sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx)
-tdfx -tga -trident -tseng -v4l -vesa -via -virtualbox -vmware (-voodoo) (-xgi)" 0 kB
|
Una vez establecidas las variables necesarias, ya puede instalar el
paquete Xorg.
Listado de Código 2.8: Instalando Xorg |
# echo "x11-base/xorg-server udev" >> /etc/portage/package.use
# emerge xorg-server
|
Nota:
Podría instalar el meta-paquete xorg-x11 en vez del de menor
tamaño xorg-server. En cuanto a funcionalidad, xorg-x11
y xorg-server son idénticos. De todos modos, xorg-x11
trae muchos más paquetes de los que probablemente vaya a necesitar,
como por ejemplo una gran variedad de fuentes en distintos idiomas. No
son necesarias para un entorno de escritorio corriente.
|
Cuando la instalación haya finalizado, tendrá que reinicializar
algunas variables de entorno antes de continuar:
Listado de Código 2.9: Reinicializando las variables de entorno |
# env-update
# source /etc/profile
|
3.
Configurando Xorg
El servidor X están está diseñado para funcionar desde el momento en
que es instalado, sin necesidad de editar manualmente los ficheros de
configuración de Xorg. Debería detectar y configurar los dispositivos
como pantallas, teclados y ratones.
Debe, en primer lugar, intentar arrancar X
sin editar ningún fichero de configuración. Si Xorg no arranca
o hay algún otro problema, necesitará configurar manualmente Xorg tal
y como se muestra en la siguiente sección.
El directorio xorg.conf.d
Nota:
Se debe ver la configuración de xorg.conf como un "ultimo
recurso". Es realmente deseable trabajar sin ninguna configuración
especial si es posible. Si no consigue hacer funcionar su configuración,
entonces continúe leyendo.
|
Los ficheros de configuración de Xorg se almacenan en
/etc/X11/xorg.conf.d/. Se asigna un nombre único a cada
fichero, y éstos terminan siempre en .conf. Si el nombre
de los ficheros comienzan con un número, entonces Xorg leera estos
ficheros en orden numérico. El fichero 10-evdev.conf se
leerán antes que el fichero 20-synaptics.conf, y así
sucesivamente. No necesita darles un número, pero esto ayudará
a mantener los ficheros organizados.
Nota:
Xorg ofrece configuraciones ejemplo en
/usr/share/doc/xorg-server-${version}/xorg.conf.example.bz2.
Puede usar estas configuraciones para creas las suyas en
/etc/X11/xorg.conf.d/. Los ejemplos ofrecen muchos
comentarios, sin embargo, si necesita más documentación acerca de la
sintaxis, lea man xorg.conf. Se pueden encontrar otros ejemplos
en el capítulo Recursos al final de esta
guía.
|
Ejecutar startx
Ahora intente startx para iniciar su servidor X. startx
es un guión que ejecuta una sesión X, en otras palabras, inicia
el servidor X y algunas aplicaciones gráficas. Decide qué aplicaciones
debe correr mediante la siguiente lógica:
-
Si existe un archivo de nombre .xinitrc en el
directorio hogar, ejecutará las órdenes allí indicadas.
-
De lo contrario, leerá el contenido de la variable de entorno
XSESSION y ejecutará una de las sesiones disponibles en
/etc/X11/Sessions/. Puede establecer el valor de
XSESSION en /etc/env.d/90xsession para que sea el
predeterminado para todos los usuarios del sistema. Por ejemplo,
como superusuario, ejecute echo XSESSION="Xfce4" >
/etc/env.d/90xsession. Esto creará el archivo
90xsession y establecerá la sesión X predeterminada
a Xfce. Recuerde
ejecutar env-update después de cambiar
90xsession.
Listado de Código 3.1: Iniciando X |
$ startx
|
Si todavía no ha instalado un gestor de ventanas lo que verá es la
pantalla en negro. Puesto que éste puede ser también un signo de que
algo ha ido mal, puede que quiera instalar twm y xterm
solo para probar el servidor X
Una vez que ambos programas estén instalados, ejecute startx
de nuevo. Deberían de aparecer algunas ventanas de xterm
haciendo que sea más fácil comprobar que el servidor X está funcionando
correctamente. Cuando quede satisfecho con los resultados, ejecute
emerge --unmerge twm xterm como root para deshacerse de los
paquetes de prueba. No los necesitará cuando haya configurado su propio
entorno de escritorio.
4.
Retocando los ajustes X
Configurando su resolución
Si nota que la resolución de la pantalla no es correcta, necesitará
comprobar dos secciones en su configuración xorg.conf.d.
En primer lugar, tiene la sección Screen la cual tiene una lista
de resoluciones, si existe, que su servidor X puede soportar. De forma
predeterminada, esta sección no contiene ninguna lista de
resoluciones. Si es este el caso, Xorg estima las resoluciones
basándose en la información de la segunda sección, Monitor.
Ahora vamos a cambiar la resolución. En el siguiente ejemplo de
/etc/X11/xorg.conf.d/40-monitor.conf añadimos la línea
PreferredMode de modo que nuestro servidor X comience con una
resolución 1440x900 por defecto. La opción Option en la sección
Device debe coincidir con el nombre de su monitor
(DVI-0), el cual se puede obtener ejecutando xrandr.
Necesitará hacer emerge xrandr para obtener esta información.
El argumento después del nombre del monitor (en la sección
Device) debe coincidir con Identifier en la sección
Monitor.
Listado de Código 4.1: Cambiando la sección Monitor |
# nano -w /etc/X11/xorg.conf.d/40-monitor.conf
Section "Device"
Identifier "RadeonHD 4550"
Option "Monitor-DVI-0" "DVI screen"
EndSection
Section "Monitor"
Identifier "DVI screen"
Option "PreferredMode" "1440x900"
EndSection
|
Ejecute X (startx) para descubrir si se está utilizando la
resolución deseada.
Múltiples monitores
Puede configurar más de un monitor en
/etc/X11/xorg.conf.d. Todo lo que necesita hacer es darle
a cada monitor un identificador, entonces liste su posición física,
tal como, "RightOf" (a la derecha de) o "Above" (encima de) otro monitor.
El siguiente ejemplo muestra cómo configurar un monitor DVI y uno VGA,
con el monitor VGA monitor como pantalla a la derecha:
Listado de Código 4.2: Configurando múltiples monitores |
# nano -w /etc/X11/xorg.conf.d/40-monitor.conf
Section "Device"
Identifier "RadeonHD 4550"
Option "Monitor-DVI-0" "DVI screen"
Option "Monitor-VGA-0" "VGA screen"
EndSection
Section "Monitor"
Identifier "DVI screen"
EndSection
Section "Monitor"
Identifier "VGA screen"
Option "RightOf" "DVI screen"
EndSection
|
Configurando su teclado
Para configurar un teclado internacional, tendrá que crear el fichero
de configuración apropiado en /etc/X11/xorg.conf.d/. Este
ejemplo usa una disposición de teclado Checo:
Listado de Código 4.3: Usando un teclado internacional |
# nano -w /etc/X11/xorg.conf.d/30-keyboard.conf
Section "InputClass"
Identifier "keyboard-all"
Driver "evdev"
Option "XkbLayout" "us,cz"
Option "XkbModel" "logitech_g15"
Option "XkbRules" "xorg"
Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:rwin,terminate:ctrl_alt_bksp"
Option "XkbVariant" ",qwerty"
MatchIsKeyboard "on"
EndSection
|
La orden "terminate" (terminate:ctrl_alt_bksp) le permite
"matar" la sesión X usando la combinación de teclas Ctrl-Alt-Retroceso.
Esto, sin embargo, hará que X termine de forma no correcta, algo que
no siempre deseará. Puede ser de utilidad cuando los programas congelen
su pantalla completamente, o cuando está configurando o ajustando su
entorno Xorg. Sea cauto cuando "mate" su escritorio con esta combinación
de teclas. La mayoría de los programas no verán bien el hecho de terminar
de esta forma, y podría perder algo (o todo) en lo que estuviera
trabajando.
Terminando
Ejecute startx y sea feliz con el resultado. Felicidades, ahora
(esperemos) tiene Xorg funcionando en su sistema. El siguiente paso es
instalar un gestor de ventanas con mayores funcionalidades o un
entorno de escritorio como pueda ser KDE, GNOME o Xfce, pero esto ya
no forma parte de esta guía. Se puede encontrar información sobre cómo
instalar estos entornos de escritorio en nuestros
Recursos de Documentación de Gentoo
.
5.
Recursos
Creando y editando los ficheros de configuración
En primer lugar, man xorg.conf y man evdev proporcionan
una rápida y completa referencia sobre la sintaxis utilizada por el
archivo de configuración. ¡Asegúrese de tenerlos abiertos en un
terminal cuando edite el archivo de configuración!.
Hay también muchos recursos en línea sobre edición de los ficheros
de configuración de /etc/X11. Nosotros solamente listamos
aquí unos pocos, asegúrese de buscar en
Google para encontrar más.
Otros recursos
Puede encontrar más información sobre cómo instalar y configurar
distintos entornos de escritorio y aplicaciones gráficas en la sección
de Recursos de Documentación de
Gentoo de nuestra documentación.
Si está actualizando a xorg-server 1.9 desde una versión
anterior, no deje de consultar la
guía de migración.
X.org ofrece muchos FAQs
en su sitio web además de su documentación.
El contenido de este documento, a no ser que se especifique
expresamente, está registrado bajo los términos de la licencia
CC-BY-SA-2.5. Se aplican las
Pautas de
Utilización del logotipo y nombre de Gentoo.
|