Xorg (Español) - ArchWiki

Jump to content

# Xorg (Español)

From ArchWiki
Esta traducción de Xorg fue revisada el 2026-02-27. Si existen cambios puede actualizarla o avisar al equipo de traducción.

Artículos relacionados

- Autostarting (Español)
- Cursor themes (Español)
- Desktop environment (Español)
- Display manager (Español)
- Font configuration (Español)
- Window manager (Español)
- XDMCP (Español)
- xinit (Español)
- xrandr (Español)

Servidor X.org — comúnmente referido simplemente como X — es la implementación del servidor de pantallas del sistema de ventanas X (X11) de la fundación X.Org, y es el servidor de pantallas más popular entre usuarios de Linux. Su ubicuidad ha llevado a que sea un requisito siempre presente para aplicaciones gráficas, resultando en una adopción masiva de la mayoría de distribuciones.

Para la bifurcación de 2025, véase Xlibre. Para la alternativa y sucesor, véase Wayland.

## Instalación

Xorg puede ser instalado con el paquete xorg-server.

Adicionalmente, algunos paquetes del grupo xorg-apps son necesarios para ciertas tareas de configuración. Se mencionan en las secciones relevantes.

Finalmente, un grupo xorg también está disponible, que incluye paquetes del servidor Xorg, paquetes del grupo xorg-apps y tipografías.

### Controladores

Véase Unidad de procesamiento gráfico#Instalación para identificar tu hardware y elegir el controlador adecuado.

Los controladores Dependientes de Dispositivo X (DDX) específicos de hardware se consideran de legado: hay un controlador DDX genérico por modesetting(4) en xorg-server, que usa Kernel mode setting y funciona bien en hardware moderno. El driver DDX modesetting usa Glamor[1] para aceleración 2D, que requiere OpenGL

Si quieres instalar otro controlador DDX, nota que Xorg busca controladores DDX instalados automáticamente:

- Si no puede encontrar el controlador específico para el hardware (listado en Unidad de procesamiento gráfico#Instalación), primero busca con fbdev (xf86-video-fbdev, que no incluye aceleración 2D o 3D.
- Si eso no se encuentra, busca vesa (xf86-video-vesa), el controlador genérico, que gestiona un gran número de chipsets pero no incluye aceleración 2D o 3D.
- Si vesa no se encuentra, Xorg cargará el controlador DDX modesetting(4).

## Ejecución

El comando Xorg(1) usualmente no se ejecuta directamente. En su lugar, el servidor X se inicia ya sea desde un gestor de pantallas o xinit.

Tip Generalmente querrás instalar un gestor de ventanas o un entorno de escritorio para suplementar X.

## Configuración

Nota Arch proporciona archivos de configuración por defecto en `/usr/share/X11/xorg.conf.d/`, y no se necesita configuración adicional en la mayoría de equipos.

Xorg usa un archivo de configuración llamado `xorg.conf` y archivos que terminan con el subfijo `.conf` para su configuración inicial: la lista completa de directorios donde se encuentran estos archivos puede ser encontrada en xorg.conf(5), junto con una explicación detallada de todas las opciones disponibles.

### Usando archivos .conf

El directorio `/etc/X11/xorg.conf.d/` almacena configuraciones específicas del anfitrión. Eres libre de añadir archivos de configuración ahí, pero deben tener el subfijo `.conf`: los archivos se leen en orden ASCII, y por convención sus nombres comienzan con `XX-` dos dígitos y un guión, así que por ejemplo 10 es leído antes que 20. Estos archivos son procesados por el servidor X al iniciarse y se tratan como parte del archivo de configuración `xorg.conf` tradicional. Nota que en configuraciones conflictivas, el archivo leído al último será procesado. Por esta razón, los archivos de configuración más genéricos deberían ser ordenados primero por nombre. Las entradas de configuración en el archivo `xorg.conf` son procesadas al final.

Para ejemplos de configuraciones, véase Fedora:Input device configuration#xorg.conf.d (en inglés).

### Usando xorg.conf

Xorg también puede ser configurado vía `/etc/X11/xorg.conf` o `/etc/xorg.conf`. También puedes generar un archivo base para `xorg.conf` con:

    # Xorg :0 -configure

Esto debería crear un archivo `xorg.conf.new` en `/root/` que puedes copiar a `/etc/X11/xorg.conf`.

Sugerencia Si ya estás ejecutando un servidor X, usa una pantalla diferente, por ejemplo `Xorg :2 -configure`.

Como alternativa, los controladores propietarios de tu tarjeta de vídeo podrían incluir una herramienta para configurar Xorg: revisa el artículo de tu controlador de vídeo, NVIDIA, para más detalles.

Nota Las palabras clave del archivo de configuración no distinguen entre mayúscilas o minúsculas, y los caracteres "_" son ignorados. Muchas cadenas de texto (incluyendo nombres de Options) tampoco distinguen entre mayúsculas y minúsculas, espacios en blanco ni el caracter "_".

## Dispositivos de entrada

Para dispositivos de entrada, el servidor X usa por defecto el controlador libinput (xf86-input-libinput), pero xf86-input-evdev y controladores relacionados están disponibles como alternativa.[2]

Udev, que se proporciona como dependencia de systemd, detectará el hardware y ambos controladores funcionarán como controlador de entrada de conexión en caliente para casi todos los dispositivos, como se define en los archivos de configuración por defecto `10-quirks.conf` y `40-libinput.conf` en el directorio `/usr/share/X11/xorg.conf.d/`.

Después de iniciar el servidor X, el archivo de registro mostrará qué controlador se conectó en caliente para los dispositivos individuales (nota que el nombre del archivo de registro más reciente puede varar):

    $ grep -e "Using input driver " Xorg.0.log

Si ambos no soportan un dispositivo en particular, instala en controlador necesario del grupo xorg-drivers. Lo mismo aplica si quieres usar otro controlador.

Para influenciar la conexión en caliente, véase #Configuración.

Para instrucciones específicas, véase también el artículo libinput, las siguientes páginas más abajo, o Fedora:Input device configuration (en inglés) para más ejemplos.

### Identificación de entrada

Véase Keyboard input#Identifying keycodes in Xorg (en inglés).

### Aceleración de ratón

Véase Aceleración de mouse.

### Botones de ratón adicionales

Véase Botones de ratón.

### Touchpad

Véase libinput o Synaptics.

### Pantalla touch

Véase Pantalla touch.

### Configuraciones de teclado

See Configuración de teclado en Xorg.

## Configuraciones de monitor

### Configuración manual

Nota

- Las nuevas versiones de Xorg se configuran automáticamente, así que la configuración manual no debería ser necesaria.
- Si Xorg no es capaz de detectar ningún monitor o para evitar la configuración automática, se puede usar un archivo de configuración. Un caso común donde esto es necesario es un sistema sin monitor, que inicia sin una pantalla e inicia Xorg automáticamente, ya sea desde una consola virtual al iniciar sesión, o desde un gestor de pantallas.

Para una configuración sin monitor, el controlador xf86-video-dummy es necesario; instálalo y crea un archivo de configuración, como el siguiente:

    /etc/X11/xorg.conf.d/10-headless.conf

    Section "Monitor"
            Identifier "dummy_monitor"
            HorizSync 28.0-80.0
            VertRefresh 48.0-75.0
            Modeline "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118
    EndSection

    Section "Device"
            Identifier "dummy_card"
            VideoRam 256000
            Driver "dummy"
    EndSection

    Section "Screen"
            Identifier "dummy_screen"
            Device "dummy_card"
            Monitor "dummy_monitor"
            SubSection "Display"
            EndSubSection
    EndSection

### Múltiples monitores

Véase el artículo principal Monitores múltiples para información general.

#### Más de una tarjeta gráfica

Debes definir el controlador correcto a utilizar e ingresar el ID de bus de tu tarjeta gráfica (en notación decimal).

    Section "Device"
        Identifier             "Screen0"
        Driver                 "intel"
        BusID                  "PCI:0:2:0"
    EndSection

    Section "Device"
        Identifier             "Screen1"
        Driver                 "nouveau"
        BusID                  "PCI:1:0:0"
    EndSection

Para obtener los IDs de bus (en hexadecimal):

    $ lspci -d ::03xx

    00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04)
    01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Mobile] (rev a1)

Los IDs de bus serían `0:2:0` y `1:0:0`.

### Tamaño de pantalla y PPP

Por defecto, Xorg siempre configura PPP a 96 desde el 30 de enero de 2009. Un cambio fue realizado con la versión 21.1 para proporcionar detección automática adecuada de PPP, pero fue revertido.

Los PPP del servidor C pueden configurarse con la opción de línea de comando `-dpi`.

Tener la configuración PPP correcta es útil cuando se requieren detalles precisos (como el renderizado de tipografías). Anteriormente, los fabricantes trataron de crear un estándar de 96 PPP (un monitor con diagonal de 10.3" tendría una resolución de 800x600, un monitor de 13.2" sería de 1024x768). A día de hoy, los PPP varían y podrían no ser iguales horizontal y verticalmente. Por ejemplo, una pantalla ancha LCD de 19" a 1440x900 podría tener 89x87 PPP.

Para ver si el tamaño de tu pantalla y tu PPP son correctos:

    $ xdpyinfo | grep -B2 resolution

Comprueba que las dimensiones concuerden con el tamaño de tu pantalla.

Si tienes las especificaciones del tamaño físico de tu pantalla, pueden ser ingresadas en el archivo de configuración de Xorg para que el PPP adecuado sea calculado (ajusta el Identifier a tu salida de xrandr):

    Section "Monitor"
        Identifier             "DVI-D-0"
        DisplaySize             286 179    # En milímetros
    EndSection

Si sólo quieres ingresar las especificaciones de tu monitor sin crear un archivo xorg.conf completo, crea un nuevo archivo de configuración. Por ejemplo (`/etc/X11/xorg.conf.d/90-monitor.conf`):

    Section "Monitor"
        Identifier             "<monitor por defecto>"
        DisplaySize            286 179    # En milímetros
    EndSection

Nota Si estás usando el controlador propietario de NVIDIA, podrías tener qué agregar `Option "UseEdidDpi" "FALSE"` bajo la sección `Device` o `Screen` para que surta efecto.

Si no tienes las especificaciones del alto o ancho de tu pantalla física (la mayoría de especificaciones en estos días sólo listan el tamaño diagonal), puedes usar la resolución nativa (o la relación de aspecto) del monitor para calcular las domensiones físicas horizontal y vertical. Usando el teorema de Pitágoras en una pantalla con diagonal de 13.3" con una resolución nativa de 1280x800 (o relación de aspecto 16:10):

    $ echo 'scale=5;sqrt(1280^2+800^2)' | bc  # 1509.43698

Esto dará la longitud diagonal de los píxeles, y con este valor puedes descubrir las longitudes físicas horizontal y vertical (y convertirlas a milímetros):

    $ echo 'scale=5;(13.3/1509)*1280*25.4' | bc  # 286.43072
    $ echo 'scale=5;(13.3/1509)*800*25.4'  | bc  # 179.01920

Nota Este cálculo funciona para monitores con pixeles cuadrados; sin embargo, existen monitores que podrían comprimir la relación de aspecto (por ejemplo una relación de aspecto de 16:10 a un monitor 16:9). Si este es el caso, deberías medir el tamaño de tu pantalla manualmente

#### Configuración manual de PPP

Nota Aunque puedes configurar cualquier PPP que quieras y las aplicaciones usando Qt y GTK se escalarán de forma apropiada, se recomiendan configuraciones de 96 (100%, sin escalar), 120 (25% más alta), 144 (50% más alta), 168 (75% más alta), 192 (100% más alta) etc., para reducir los artefactos al escalar interfaces gráficas que usen mapas de bits. Reducir por debajo de 96 podría no reducir el tamaño de los elementos gráficos de las interfaces, ya que de forma típica el valor de PPP más bajo para los iconos es de 96.

Para controladores en cumplimiento con RandR (por ejemplo el controlador de código abierto de ATI), puedes configurarlo con:

    $ xrandr --dpi 144

Nota Las aplicaciones que cumplen con la configuración no cambiarán inmediatamente. Debes iniciarlas de nuevo.

Para que sea permanente, véase Autoarranque#En el inicio de Xorg.

##### Controlador propietarios de Nvidia

Puedes configurar manualmente los PPP agregando la opción balo la sección `Device` o `Screen`:

    Option              "DPI" "96 x 96"

##### Precaución sobre la configuración manual de PPP

GTK sobrescribe muy seguido los PPP del servidor vía el Recurso X `Xft.dpi`. Para saber si esto te ocurre, compru[ebalo con:

    $ xrdb -query | grep dpi

Con versiones de la biblioteca GTK desde 3.16, cuando esta variable no está explícitamente configurada, GTK la configura a 96. Para hacer que las apps GTK obedezcan a los PPP del servidor podrías tener qué configurar `Xft.dpi` explícitamente para tener el mismo valor que el servidor. El recurso `Xft.dpi` es el método por el que algunos entornos de escritorio fuerzan opcionalmente los PPP a un valor particular en las configuraciones personales. Entre estos se encuentran KDE y TDE.

### Gestión de energía de pantalla

DPMS es una tecnología que permite el comportamiento de ahorro de energía en monitores cuando la computadora no está en uso. Esto permitirá que tus monitores automáticamente puedan entrar en modo de espera después de un periodo predefinido de tiempo.

## Composición

La extensión Composite para X causa que una sub-rama entera de la jerarquía de ventanas sea renderizada a un búfer fuera de pantalla. Las aplicaciones pueden tomar el contenido de ese búfer y hacer lo que quieran. El búfer fuera de pantalla puede ser mezclado automáticamente en la ventana padre, o combinados con programas externos llamados gestores de composición. Para más información, véaseWikipedia:Gestor de composición de ventanas.

Algunos gestores de ventanas (por ejemplo Compiz, Enlightenment, Kwin, marco, metacity, muffin, mutter, Xfwm) hacen la composición por su cuenta. Para otros gestores de ventanas, se puede utilizar un gestor de composición separado.

### Lista de gestores de composición

- Picom — Compositor ligero con sombreado, difuminado avanzado y desvanecimiento. Bifurcado de Compton.

  https://github.com/yshui/picom || picom

- Xcompmgr — Gestor de composición para efectos de ventana.

  https://gitlab.freedesktop.org/xorg/app/xcompmgr/ || xcompmgr

- fastcompmgr — Un compositor ligero para X11 enfocado en velocidad.

  https://github.com/tycho-kirchner/fastcompmgr || fastcompmgrAUR

- Gamescope — El microcompositor de Valve, con garacterísticas orientadas al gaming como escalado FSR. Bifurcado de steamos-compositor.

  https://github.com/ValveSoftware/gamescope || gamescope

- steamos-compositor-plus — Compositor de Valve, con varias configuraciones añadidas y corrección de errores.

  https://github.com/chimeraos/steamos-compositor-plus || steamos-compositor-plusAUR

## Consejos y trucos

### Automatización

Esta sección lista utilidades para automatizar entradas de teclado/ratón y operaciones de ventana (como mover, redimensionar o alzar).

Herramienta | Paquete | Manual | Entrada de Keysym | Operaciones de ventana | Nota
--- | --- | --- | --- | --- | ---
xautomation | xautomation | xte(1) | Sí | No | También contiene herramientas de screen scrapping. No puede simular `F13` y más.
xdo | xdo | xdo(1) | No | Sí | Pequeña utilidad de X para ejecutar acciones primarias en ventanas.
xdotool | xdotool | xdotool(1) | Sí | Sí | Bastantes errores y no en desarrollo activo, por ejemplo: análisis roto de linea de comandos.[3][4]
xvkbd | xvkbdAUR | xvkbd(1) | Sí | No | Teclado virtual para Xorg, también tiene la opción `-text` para enviar caracteres.
AutoKey | autokey-qtAUR autokey-gtkAUR | Documetación | Sí | Sí | Poderosa utilidad de macros y scripting de alto nivel, con clientes para Qt y Gtk.

Véase también Portapapeles#Herramientas y Un repaso general de herramientas de automatización de X (en inglés).

### Sesión X anidada

Para ejecutar una sesión anidada de otro entorno de escritorio:

    $ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1

Esto lanzará una sesión de Window Maker en una ventana de 1024 por 768 dentro de tu sesión actual de X.

Esto requiere que el paquete xorg-server-xnest sea instalado.

Una forma más moderna de iniciar una sesión anidada de X es con Xephyr (Español).

### Iniciar una aplicación sin un gestor de ventanas

Véase xinit#Iniciar aplicaciones sin un gestor de ventanas.

### Iniciar programas gráficos remotamente

Véase el artículo principal: OpenSSH#Redireccionar SSH.

### Habilitar y deshabilitar fuentes de entrada bajo demanda

Con la ayuda de xinput puedes deshabilitar o habilitar temporalmente las fuentes de entrada. Esto podría ser útil, por ejemplo, en sistemas que tienen más de un ratón, como las ThinkPad, y preferirías usar sólo uni para evitar clics de ratón no deseados.

Instala el paquete xorg-xinput.

Encuentra el nombre o ID de l dispositivo que quieres deshabilitar:

    $ xinput

Por ejemplo, en una Lenovo Thinkpad T500, la salida luce así:

    $ xinput

    ⎡ Virtual core pointer                          id=2    [master pointer  (3)]
    ⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
    ⎜   ↳ TPPS/2 IBM TrackPoint                     id=11   [slave  pointer  (2)]
    ⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
    ⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
        ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
        ↳ Power Button                              id=6    [slave  keyboard (3)]
        ↳ Video Bus                                 id=7    [slave  keyboard (3)]
        ↳ Sleep Button                              id=8    [slave  keyboard (3)]
        ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]
        ↳ ThinkPad Extra Buttons                    id=12   [slave  keyboard (3)]

Deshabilita el dispositivo con `xinput --disable dispositivo`, donde dispositivo es el ID o nombre del disósitivo que quieres deshabilitar. En este ejemplo deshabilitaremos el Touchpad Synaptics, con el ID 10:

    $ xinput --disable 10

Para rehabilitar el dispositivo, sólo ejecuta el comando opuesto:

    $ xinput --enable 10

Como alternativa usando el nombre del dispositivo, el comando para deshabilitar el touchpad sería:

    $ xinput --disable "SynPS/2 Synaptics TouchPad"

### Deshabilitar fuente de entrada de forma persistente

Puedes deshabilitar una fuente de entrada en particular usando un snippet de configuración:

    /etc/X11/xorg.conf.d/30-disable-dispositivo.conf

    Section "InputClass"
           Identifier   "disable-dispositivo"
           Driver       "nombre_de_controlador"
           MatchProduct "nombre_de_dispositivo"
           Option       "Ignore" "True"
    EndSection

`dispositivo` es un nombre arbitrario, y `nombre_de_controlador` es el nombre del controlador de entrada, por ejemplo `libinput`. `nombre_de_dispositivo` es lo que realmente se utiliza para deshabilitar el dispositivoa propiado. Para métodos alternativos para deshabilitar el dispositivo correcto, como la opción `MatchIsTouchscreen` de libinput, consulta la documentación de tu controlador. Aunque este ejemplo usa libinput, este método no depende del controlador ya que simplemente previene que el dispositivo sea propagado al controlador.

### Terminar una aplicación con un atajo de teclado

Ejecuta este script con un atajo de teclado:

    #!/bin/sh
    windowFocus=$(xdotool getwindowfocus)
    pid=$(xprop -id "$windowFocus" | grep PID)
    kill -9 "$pid"

Dependencias: xorg-xprop, xdotool

Véase también #Terminar una aplicación visualmente.

### Bloquear el acceso a TTY

Para bloquear el acceso a TTY cuando se está en una sesión de X, agrega lo siguiente a xorg.conf:

    Section "ServerFlags"
        Option "DontVTSwitch" "True"
    EndSection

Esto puede ser usado para ayudar a restringir el acceso a la linea de comandos a usuarios que no sean de confianza.

### Prevenir que el usuario finalice X

Para prevenir que un usuario finalice X cuando está en ejecución agrega lo siguiente a xorg.conf:

    Section "ServerFlags"
        Option "DontZap"      "True"
    EndSection

Nota El atajo `Ctrl+Alt+Retroceso` no es directamente lo que desencadena la terminación del servidor X, sino la acción `Terminate_Server` del mapa de teclado. Esto usualmente no está configurado por defecto. Véase Xorg/Configuración de teclado#Finalizar Xorg con Ctrl+Alt+Retroceso.

### Terminar una aplicación visualmente

Cuando una aplicación presenta errores o se congela, en lugar de usar `kill` o `killall` desde una terminal y tener qué encontrar el nombre del proceso o ID, xorg-xkill permite hacer clic en dicha aplicación para cerrar su conexión con el servidor X. Muchas aplicaciones existentes sí intentan abortar cuando su conexión al servidor X es cerrada, pero algunas pueden elegir continuar.

### Xorg sin root

Xorg puede ejecutarse con privilegios de usuario estándar en lugar de superusuario (el tan llamado Xorg "sin root"). Esta es una mejora significativa de seguridad sobre ejecutarlo como superusuario. Nota que algunos Gestores de pantallas populares no soportan Xorg sin root (por ejemplo LightDM o XDM).

Puedes verificar el usuario con que se ejecuta Xorg con `ps -o user= -C Xorg`.

Véase también Xorg.wrap(1), systemd-logind(8), Systemd/Usuario#Xorg como servicio de usuario de systemd, Fedora:Cambios/XorgSinPrivilegiosDeRoot y FS#41257.

#### Usando xinitrc

Para configuar Xorg sin root usando xinitrc:

- Ejecuta startx como subproceso de la consola de inicio de sesión; ejecuta `startx` directamente y no uses `exec startx`.
- Asegúrate de que Xorg utilice la terminal virtual para cuyos permisos hayan sido configurados, por ejemplo pasados por logind en `$XDG_VTNR` via .xserverrc.
- Si se usan ciertos controladores propietarios de pantalla, la autodetección de kernel mode setting fallará. En tales casos, debes configurar `needs_root_rights = no` en `/etc/X11/Xwrapper.config`.

Nota que al ejecutar `startx` directamente sin `exec` deja la consola abierta en caso de que Xorg crasheé. Ya que algunas pantallas de bloqueo se ejecutan dentro de Xorg, esto puede dejar acceso completo al usuario que lo ejecuta.

#### Usando GDM

GDM ejecutará Xorg sin privilegios de superusuario por defecto cuando se utiliza kernel mode setting.

#### Redirección de registro de sesión

Cuando Xorg se ejecuta en modo sin root, los registros de Xorg se guardan en `~/.local/share/xorg/Xorg.log`. Sin embargo, las salidas de stdout y stderr de la sesión de Xorg no se redirigen a este registro. Para rehabilitar la redirección, inicia Xorg con el argumento `-keeptty` y redirige las salidas de stdout y stderr a un archivo:

    startx -- -keeptty >~/.xorg.log 2>&1

Como alternativa, copia `/etc/X11/xinit/xserverrc` a `~/.xserverrc`, y añade `-keeptty`. Véase [5].

### Xorg como superusuario

Como se explicó anteriormente, hay circunstancias en las cuales Xorg sin root inicia por defecto. Si este es el caso para tu configuración, y necesitas ejecutar Xorg como superusuario, puedes configurar Xorg.wrap(1) para que requiera root:

Advertencia Ejecutar Xorg como superusuario presenta riesgos de seguridad. Véase #Xorg sin root para mayor discusión.

    /etc/X11/Xwrapper.config

    needs_root_rights = yes

### Wayback

Wayback es una capa de compatibilidad de X11 que permite ejecutar entornos de escritoios completos (y gestores de ventanas) usando componentes de Wayland. Está disponible en el AUR con el paquete wayback-x11AUR.

### 12to11

12to11 permite ejecutar sin problemas aplicaciones exclusivas de Wayland bajo X11. Está disponible desde el AUR como 12to11-gitAUR. Ejecuta el renderizador EGL para el mejor rendimiento:

     $ RENDERER=egl 12to11

## Solución de problemas

### General

Si ocurre un problema, revisa el registro almacenado en `/var/log/` o, para Xorg sin root por defecto desde v1.16, en `~/.local/share/xorg/`. Los usuarios de GDM deberían revisar el registro de systemd. [6]

Los archivos de registro se encuentran en formato `Xorg.n.log` con `n` siendo el número de pantalla. Para una máquina con sólo un usuario con la configuración por defecto, el registro aplicable frecuentemente es `Xorg.0.log`, pero de otro modo podría variar. Para asegurarte de que eliges el archivo correctro, podría ayudar que veas la marca de tiempo del inicio de la sesión de X y desde qué consola fue iniciado. Por ejemplo:

    $ grep -e Log -e tty Xorg.0.log

    [    40.623] (==) Log file: "/home/archuser/.local/share/xorg/Xorg.0.log", Time: Thu Aug 28 12:36:44 2014
    [    40.704] (--) controlling tty is VT number 1, auto-enabling KeepTty

Sugerencia Para monitorear el registro con marcas de tiempo legibles, la salida de tail(1) puede ser canalñizada a ts(1) (proporcionado por el paquete moreutils). Esto dará marcas de tiempo correctas sólo para las lineas agregadas al registro mientras el comando está en ejecución. Por ejemplo:

    $ tail -f ~/.local/share/xorg/Xorg.0.log | ts

- Ya en el archivo de registrp mantente alerta para cualquier línea comenzando con `(EE)`, que representan errores, y también `(WW)`, que son advertencias que podrían indicar otros problemas.
- si hay un archivo `.xinitrc` vacío en tu directorio `$HOME`, elimínalo o edítalo para que X inicie adecuadamente. Si no haces esto, X simplemente mostrará una pantalla negra sin errores aparentes en tu archivo `Xorg.0.log`. Simplemente eliminarlo hará que inicie un entorno X por defecto.
- Si la pantalla se ennegrece, aún podrías intentar cambiar a una consola virtual diferente (por ejemplo `Ctrl+Alt+F6`), e iniciar sesión a ciegas como root. Puedes hacer esto escribiendo `root` (presiona `Intro` después de escribirlo) e ingresando la contraseña de root (de nuevo, presiona `Intro` eespués de escribirla).

  También podrías intentar terminar el servidor X con:

      # pkill -x X

  Si esto no funciona, reinicia a ciegas con:

      # reboot

- Revisa páginas específicas en Categoría: Dispositivos de entrada si tienes problemas con el teclado, ratón, touchpad, etc.
- Busca problemas comunes en los artículos de AMDGPU, Intel y NVIDIA.

### Pantalla negra, Protocolo no especificado, Recurso temporalmente no disponible para todos o algunos usuarios

X crea la configuración y archivos temporales en la carpeta personal del usuario actual. Asegúrate de que hay suficiente espacio libre en la partición donde reside tu carpeta principal. Desafortunadamente, el servidor X no proporciona información obvia sobre la falta de espacio libre en este caso.

### DRI con tarjetas Matrox dejó de funcionar

Si usas una tarjeta Matrox y el DRI dejó de funcionar después de actualizar a Xorg, intenta agregando esta línea:

    Option "OldDmaInit" "On"

a la sección de `Device` que referencia a la tarjeta de vídeo en `xorg.conf`.

### Problemas con el modo Frame-Buffer

X falla al iniciar con los siguientes mensajes de registro:

    (WW) Falling back to old probe method for fbdev
    (II) Loading sub module "fbdevhw"
    (II) LoadModule: "fbdevhw"
    (II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
    (II) Module fbdevhw: vendor="X.Org Foundation"
           compiled for 1.6.1, module version=0.0.2
           ABI class: X.Org Video Driver, version 5.0
    (II) FBDEV(1): using default device

    Fatal server error:
    Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices

Para corregirlo, desinstala el paquete xf86-video-fbdev.

### El programa solicita "font '(null)'"

Mensaje de error: `unable to load font `(null)'`.

Algunos programas sólo funcionan con tipografías de mapas de bits. Dos paquetes mayores con tipografías de mapas de bits están disponibles, xorg-fonts-75dpi y xorg-fonts-100dpi. No necesitas ambos; uno debería ser suficiente. Para saver cuá sería mejor en tu caso, intenta `xdpyinfo` de xorg-xdpyinfo, así:

    $ xdpyinfo | grep resolution

y usa lo más cercano al valor mostrado.

### Recuperación: deshabilitar Xorg antes de la interfaz gráfica de inicio de sesión

Si Xorg está configurado para iniciar automáticamente y por alguna razón necesitas prevenir que inicie antes de que el inicio de sesión o el gestor de pantalla aparezca (si el sistema está erróneamente configurado y Xorg no reconoce la entrada de tu ratón o teclado, por ejemplo), puedes lograr esta tarea con dos métodos.

- Cambia el target por defecto a `rescue.target`. Véase systemd#Cambiar el target predeterminado para arrancar.
- Si tienes no sólo un sistema defectuoso, sino que también configuraste el tiempo de espera del menú GRUB a cero, o no puedes prevenir de otra forma usar GRUB para prevenir que Xorg inicie, puedes usar el Live CD de Arch Linux. Sigue la guía de instalación sobre cómo montar y hacer chroot al sistema Arch Linux instalado. Como alternativa, trata de cambiar a otra tty con `Ctrl+Alt` + tecla de función (usualmente de `F1` a `F7` dependiendo de cuál no sea usada por X), inicia sesión como root y sigue los siguientes pasos.

Dependiendo de tu configuración, necesitarías hacer uno o más de estos pasos:

- Deshabilita el Gestor de pantallas.
- Deshabilita el Start X at login inicio automático de X.
- Renombra el archivo `~/.xinitrc` o comenta la linea `exec` en .

### Los clientes iniciados con "su" fallan

Si obtienes la línea `Cliente no autorizado a conectarse al servidor`, intenta agregando esta línea:

    session        optional        pam_xauth.so

a `/etc/pam.d/su` y `/etc/pam.d/su-l`. `pam_xauth` configurará entonces las variables de entorno y gestionará las claves `xauth`.

### X falla al iniciar: Falla en inicialización de teclado

Si el sistema de archivos (específicamente `/tmp`) está lleno, `startx` fallará. El archivo de registro contendrá:

    (EE) Error compiling keymap (server-0)
    (EE) XKB: Could not compile keymap
    (EE) XKB: Failed to load keymap. Loading default keymap instead.
    (EE) Error compiling keymap (server-0)
    (EE) XKB: Could not compile keymap
    XKB: Failed to compile keymap
    Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.
    Fatal server error:
    Failed to activate core devices.
    ...

Libera algo de espacio en el sistema de archivos relevante y X iniciará.

### Pantalla verde al tratar de ver un vídeo

Tu profundidad de color está mal configurada. Podría estar en 24 en lugar de 16, por ejemplo.

### Error SocketCreateListener

Si X termina con el mensaje de error `SocketCreateListener() failed`, podrías tener qué eliminar archivos de socket en `/tmp/.X11-unix`. Esto podría pasar si anteriormente has ejecutado Xorg como superusuario (por ejemplo para generar un archivo `xorg.conf`).

### Clave MIT-MAGIC-COOKIE-1 inválida al tratar de ejecutar un programa como superusuario

Este error significa que sólo el usuario actual tiene acceso al servidor X. La solución es darle acceso a root:

    $ xhost +si:localuser:root

Esa línea también puede ser usada para darle acceso a X a un usuario diferente a root.

## Véase también

- Xplain - Explicación a profundidad del sistema de ventanas X
- Xorg(1)
- Prepare for LPIC-1 exam 2 - topic 106.1: X11 (en inglés) - cubre brevemente la arquitectura, #Configuración, entornos de escritorio, uso remoto, Wayland.
- xorg.conf(5)
- Gentoo:Xorg/Guide#Configuration

Category:

- X server (Español)

Xorg (Español)
Add topic