Xorg/Configuración

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Xorg/Configuration and the translation is 60% complete.

Other languages:
English • ‎español • ‎français • ‎日本語 • ‎한국어

Xorg es el servidor X Window que permite a los usuarios tener un entorno gráfico a su alcance. Este CÓMO explica lo que es Xorg, cómo instalarlo y qué opciones de configuración existen.

¿Qué es el Servidor X Window?

Gráfico vs Línea de Comandos

El usuario medio puede estar asustado si piensa que va a tener que teclear órdenes. ¿Porqué no apuntar y hacer clic a través de la libertad que ofrece Gentoo (y Linux en general)? Bien, naturalmente, ¡Puede hacer esto! Linux ofrece una amplia variedad de interfaces de usuario y entornos que puede instalar encima de su sistema actual.

Esta es una de las sorpresas más grandes que encuentran los nuevos usuarios: una interfaz gráfica de usuario no es más que una aplicación que corre en su sistema. No es parte del núcleo Linux o cualquier otra parte interna del sistema. Es una herramienta poderosa que permite completamente capacidades gráficas en su estación de trabajo.

Debido a la importancia de los estándares son importantes, un estándar para dibujar y mover ventanas en una pantalla, interactuar con el usuario a través del ratón y teclado y otros aspectos básicos pero importantes se han creado bajo el nombre "Sistema X Window", generalmente abreviado X11 o simplemente X. Se utiliza en Unix, Linux y sistemas operativos tipo Unix en todo el mundo.

La aplicación que ofrece a los usuarios de Linux la capacidad de ejecutar interfaces gráficas de usuario y que utiliza el estándar X11 es Xorg-X11, una bifurcación del provecto XFree86. En su momento XFree86 decidió utilizar una licencia que podría ser incompatible con la licencia GPL, por tanto, se recomienda el uso de Xorg. El árbol oficial de Portage ya no ofrece el paquete XFree86.

El Proyecto X.org

El proyecto X.org crea y mantiene una implementación del sistema X11 de código abierto y redistribuible libremente. Se trata, por tanto, de una infraestructura de escritorio basada en un sistema X11 de fuentes abiertas.

Xorg ofrece una interfaz entre su hardware y el software gráfico que quiere correr. Además de esto, Xorg también trabaja en red, lo que implica que puede correr una aplicación en un sistema mientras la está viendo en otro.

Instalar Xorg

Antes de que pueda instalar Xorg, necesitará preparar su sistema para ello. En primer lugar, configure el núcleo para que ofrezca soporte a dispositivos de entrada y tarjetas de vídeo. A continuación, prepararemos /etc/portage/make.conf de modo que se construyan e instalen los controladores y paquetes Xorg correctos.

Soporte para controladores de entrada

Por defecto, Xorg utiliza evdev,[1] un controlador de entrada genérico. Necesitará activar el soporte para evdev realizando un cambio a 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.

KERNEL Habilitar evdev en el núcleo
Device Drivers --->
 Input device support --->
  <*> Event interface

Ajuste del modo del núcleo

Los controladores de vídeo de código abierto actuales se apoyan en el ajuste del modo del núcleo (KMS o Kernel ModeSetting). KMS proporciona un arranque gráfico mejorado con menos parpadeo, mayor velocidad en el cambio a modo usuario, una consola framebuffer integrada, cambio rápido de la consola a Xorg y otras características. KMS entra en conflicto con los controladores heredados, que deben permanecer deshabilitados en la configuración de su núcleo.

En primer lugar, prepare su núcleo para KMS. Necesitará hacer esto independientemente del controlador de vídeo Xorg que esté utilizando.

KERNEL Configurar framebuffers
Device Drivers --->
 Graphics support --->
  Support for frame buffer devices --->
  ## (Deshabilitar todos los controladores, incluyendo VGA, Intel, nVidia, y ATI)
  ## (Más abajo, habilitar el soporte básico de la consola. KMS lo utiliza)
  Console display driver support --->
   <*> Framebuffer Console Support 

A continuación, configure su núcleo para utilizar el controlador MS apropiado para su tarjeta de vídeo. Intel, nVidia, y AMD/ATI son las tarjetas más comunes, siga el listado de códigos para su tarjeta mostrado abajo.

Para tarjetas Intel[2]:

KERNEL 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:

KERNEL Ajustes para nVidia settings
Device Drivers --->
 Graphics support --->
  Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
   <*> Nouveau (nVidia) cards

Para las nuevas tarjetas AMD/ATI (ATI_FAQ RadeonHD 2000 y superiores), necesitará hacer emerge de radeon-ucode o linux-firmware. Una vez que haya instalado uno de estos paquetes, configure su núcleo tal y como se describe en la sección de firmware de la página de Radeon:

KERNEL Ajustes AMD/ATI
## (Configurar el núcleo para utilizar el firmware radeon-ucode)
Device Drivers --->
 Generic Driver Options --->
 [*] Include in-kernel firmware blobs in kernel binary
 ## # Específico de tarjetas ATI, (lea la página de Radeon para obtener detalles de qué firmware incluir)
 (radeon/<SU-MODELO>.bin ...)
 ## # Para todos:
 (/lib/firmware/) Directorio raíz de los objetos que contienen el Firmware

## (Habilitar el soporte KMS para Radeon)
Device Drivers --->
 Graphics support --->
  <*> Direct Rendering Manager --->
  <*> ATI Radeon
  [*] Enable modesetting on radeon by default
  [ ] Enable userspace modesetting on radeon (DEPRECATED)
Nota
Las antiguas tarjetas Radeon (las series X1900 y anteriores) no necesitan el paquete radeon-ucode ni ninguna configuración del firmware. Simplemente habilite el Gestor de Renderizado Directo (Direct Rendering Manager) y el ajuste del modo ATI.
Nota
Los núcleos Linux >= 3.9 no tienen activado el ajuste de modo radeon por defecto (Enable modesetting on radeon by default ) ya que se implica por defecto

Ahora que ya ha configurado 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, tiene que configurar dos variables importantes en el fichero /etc/portage/make.conf antes de instalar Xorg.

La primera variable es VIDEO_CARDS. Se utiliza para definir los controladores de vídeo que pretende utilizar y su valor, normalmente, está basado en el tipo de tarjeta que tiene instalada en su sistema. Los valores más comunes son nouveau para tarjetas nVidia o radeon para tarjetas ATI. Ambos son controladores de código abierto con buen soporte y desarrollados activamente.

Nota
Puede probar también los controladores de nVidia y AMD/ATI, nvidia y fglrx respectivamente. Sin embargo, la configuración de estos controladores está más allá del alcance de esta guía. Por favor, lea Guía nVidia de Gentoo Linux y las Preguntas Frecuentes sobre ATI en Gentoo Linux. Si no sabe qué controlador elegir, eche un vistazo a estas guías para obtener información.

El controlador intel se puede utilizar en ordenadores de escritorio o portátiles con chipsets gráficos comunes de Intel.

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 se construirán para gestionar los dispositivos de entrada. En la mayoría de las ocasiones, debería bastar con darle el valor evdev[1]. Si va a utilizar dispositivos de entrada alternativos como un panel táctil Synaptics en un ordenador portátil, asegúrese de añadirlo a INPUT_DEVICES .

Decide which drivers will be used and add necessary settings to the /etc/portage/make.conf file:

CÓDIGO Entradas ejemplo de make.conf
## (Para tener soporte del ratón, el teclado y el panel táctil Synaptics)
INPUT_DEVICES="evdev synaptics"
## (Para tarjetas nVidia)
VIDEO_CARDS="nouveau"
## (Para tarjetas AMD/ATI)
VIDEO_CARDS="radeon"

If the suggested settings does not work emerge the x11-base/xorg-drivers package(see the step below). Check all the options available and choose those which apply to the system. This example is for a system with a keyboard, mouse, Synaptics touchpad, and a Radeon video card.

root #emerge --ask --verbose --pretend x11-base/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

First of all, make sure udev is added as a USE:

root #echo "x11-base/xorg-server udev" >> /etc/portage/package.use

After setting all the necessary variables Xorg can be installed:

root #emerge --ask x11-base/xorg-server
Nota
The x11-base/xorg-x11 meta-package could be installed instead of the more lightweight x11-base/xorg-server. Functionally x11-base/xorg-x11 and x11-base/xorg-server are the same, however x11-base/xorg-x11 brings in many more packages that most systems will probably not require. Additional packages include a large assortment of fonts in many languages. They are not necessary for a working X11 framework.

When the installation is finished, some environment variables will need to re-initialized before continuing. Source the profile with this command:

root #env-update
root #source /etc/profile

NVidia users

For NVidia users it might be beneficial to run nvidia-xconfig in order to generate a working xorg.conf file for the selected graphics card. Without this step the xorg.conf file will need to be created manually as described below. Missing the xorg.conf will sometimes generate a "No screens found" error to the terminal when attempting to startx.

Also the NVidia driver will only work after a reboot, so be sure to restart the system after running nvidia-xconfig.

root #nvidia-xconfig

It is both possible and recommended to set the OpenGL renderer to the hardware renderer instead of a software renderer:

root #eselect opengl set nvidia

Configurar Xorg

The X server is designed to work out-of-the-box, with no need to manually edit Xorg's configuration files. It should detect and configure devices such as displays, keyboards, and mice.

Try using startx without editing any configuration files. If Xorg will not start, or there is some other problem, then manual configuration of Xorg will be needed. This is explained in the following section.

Nota
If changes have been made to the kernel, do not forget to restart the system before using startx in order to be using the newly built kernel. If the kernel was updated to a newer version in the process this will most likely require the bootloader's configuration files to be updated as well.

The xorg.conf.d directory

Importante
Configuring files in xorg.conf.d should be seen as a last resort option. If possible it is desirable to run Xorg without any special configuration.

Most of the configuration files for Xorg are stored in /etc/X11/xorg.conf.d/. Each file is given a unique name and ends in .conf. The file names in Xorg's configuration directory will read in alpha numeric order. For example, 10-evdev.conf will be read before 20-synaptics.conf; a-evdev.conf will be read before b-synaptics.conf, and so on. The files in this directory are not required to be numbered, but doing so will help keep them organize. Organization is helpful in when debugging faulty configuration files.

Nota
Xorg provides example configurations in /usr/share/doc/xorg-server-${version}/xorg.conf.example.bz2. These can be used to create custom configuration files in /etc/X11/xorg.conf.d/. The examples are heavily commented, but if more documentation regarding the syntax is needed man xorg.conf is always available. Other examples can be found in the Resources chapter at the end of this guide.

Usar startx

Try startx to start up the X server. startx is a script that executes an X session; that is, it starts the X server and some graphical applications on top of it. It decides which applications to run using the following logic:

  • Si hay un fichero llamado .xinitrc en su directorio personal, se ejecutarán las órdenes listadas en el mismo.
  • Otherwise, it will read the value of the XSESSION variable and will execute one of the sessions available in /etc/X11/Sessions/ accordingly. The value of XSESSION can be set in the /etc/env.d/90xsession file to make a default session for all users on the system. For example, as root, run echo XSESSION="Xfce4" > /etc/env.d/90xsession. This will create the 90xsession file and set the default X session to Xfce. Remember to run env-update after making changes to 90xsession.
user $startx

If no window manager has been installed a solid black screen will appear. Since this can also be a sign that something is wrong, the x11-wm/twm and x11-terms/xterm packages can be installed only to test X.

Once the programs are installed, run startx again. A few xterm windows should appear, making it easy to verify the X server is working correctly. Once satisfied with the results, unmerge x11-wm/twm and x11-terms/xterm if installed in the step above to remove the testing packages. They will not be needed to setup a proper desktop environment.

Ajustando la configuración X

Setting the screen resolution

If the screen resolution looks to be wrong, you will need to check two sections in your xorg.conf.d configuration. First of all, you have the Screen section which lists the resolutions that your X server will run at. This section might not list any resolutions at all. If this is the case, Xorg will estimate the resolutions based on the information in the second section, Monitor.

Now let us change the resolution. In the next example from /etc/X11/xorg.conf.d/40-monitor.conf we add the PreferredMode line so that our X server starts at 1440x900 by default. The Option in the Device section must match the name of your monitor (DVI-0), which can be obtained by running xrandr. Install xrandr (emerge xrandr) just long enough to get this information. The argument after the monitor name (in the Device section) must match the Identifier in the Monitor section.

root #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

Corra X (startx) para comprobar que se está utilizando la resolución deseada.

Múltiples monitores

More than one monitor in can be established in /etc/X11/xorg.conf.d/. Give each monitor a unique identifier, then list its physical position, such as "RightOf" or "Above" another monitor. The following example shows how to configure a DVI and a VGA monitor, with the VGA monitor as the right-hand screen:

root #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

Configuring the keyboard

To setup X to use an international keyboard create the appropriate config file in /etc/X11/xorg.conf.d/. This example features a Czech keyboard layout:

root #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

The "terminate" command (terminate:ctrl_alt_bksp) lets users kill the X session by using the Ctrl+Alt+Backspace key combination. This will, however, make X exit disgracefully -- something that users might want to avoid. It can be useful when programs have frozen the display entirely, or when configuring and tweaking the Xorg environment. Be careful when killing the desktop with this key combination - most programs really do not like it when they are ended this way. Some, if not all, of the information that has not been written to the disk (information stored in "open documents") will be lost.

Terminar

Run startx and be happy about the result. Congratulations, you now (hopefully) have a working Xorg! The next step is to install a useful window manager or desktop environment such as KDE, GNOME, or Xfce. Information on installing these desktop environments can be found here on the wiki.

See also

Wayland

External resources

Crear y editar los ficheros de configuración

First of all, man xorg.conf and man evdev[1] provide quick yet complete references about the syntax used by these configuration files. Be sure to have them open on a terminal when editing Xorg configuration files!

There are also many online resources on editing config files in /etc/X11/. Only a few are listed here; use a choice favorite search engine to find more.

Otros recursos

Se puede encontrar más información sobre la instalación y configuración de diversos entornos de escritorio y aplicaciones en la sección de Recursos de Documentación del Escritorio de Gentoo de nuestra documentación.

When upgrading to xorg-server 1.9 from an earlier version, be sure to read the migration guide.

X.org ofrece muchas FAQs en su sitio Web, además de su documentación.

References


This article is based on a document formerly found on our main website gentoo.org.
The following people have contributed to the original document: swift, nightmorph
They are listed here as the Wiki history does not provide for any attribution. If you edit the Wiki article, please do not add yourself here, your contributions are recorded on the history page.