Xorg (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 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.
Configuración
/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.
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.
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
Pantalla touch
Véase Pantalla touch.
Configuraciones de teclado
See Configuración de teclado en Xorg.
Configuraciones de monitor
Configuración manual
- 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
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
Configuración manual de PPP
Para controladores en cumplimiento con RandR (por ejemplo el controlador de código abierto de ATI), puedes configurarlo con:
$ xrandr --dpi 144
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.
- Xcompmgr — Gestor de composición para efectos de ventana.
- fastcompmgr — Un compositor ligero para X11 enfocado en velocidad.
- Gamescope — El microcompositor de Valve, con garacterísticas orientadas al gaming como escalado FSR. Bifurcado de steamos-compositor.
- steamos-compositor-plus — Compositor de Valve, con varias configuraciones añadidas y corrección de errores.
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
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
startxdirectamente y no usesexec startx. - Asegúrate de que Xorg utilice la terminal virtual para cuyos permisos hayan sido configurados, por ejemplo pasados por logind en
$XDG_VTNRvia .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 = noen/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:
/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
$ 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
.xinitrcvací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 archivoXorg.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 escribiendoroot(presionaIntrodespués de escribirlo) e ingresando la contraseña de root (de nuevo, presionaIntroeespué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 deF1aF7dependiendo 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
~/.xinitrco comenta la lineaexecen .
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