Arrancar aplicaciones gráficas en una sesión gráfica como un usuario distinto
Copyright © 9 de Diciembre de 2002 por Pedro Antonio Fructuoso Merino (tar)
A la hora de ejecutar aplicaciones gráficas como root desde un terminal de texto que había iniciado desde una sesion X de un usuario distinto me encontré con el siguiente error:
Xlib: connection to ":0.0" refused by server Xlib: Client is not authorized to connect to Server
El problema radicaba en que el servidor de X no escuchaba peticiones TCP al puerto 6000, que es el puerto en el que el servidor X recibe las peticiones X remotas. Para solucionarlo hice lo siguiente:
Como root edité el fichero /etc/X11/xinit/xserverrc y en la linea en la que ponía:
exec /usr/bin/X11/X -dpi 100 -no-litten tcp
lo cambié por:
exec /usr/bin/X11/X -dpi 100
Así mismo modifiqué el fichero de configuración de mi gestor de arranque (kdm) que se encuentra en /ect/kde3/kdm/kdmrc, y donde se ponía:
[Xdmcp]
Enable=false
lo cambié por:
[Xdmcp]
Enable=true
En el caso de que tu gestor sea gdm puedes encontrar su fichero de configuración en /etc/gdm/gdm.conf y habrá que modificar la misma linea.
Una vez hecho esto reinicié mi servidor X entré como root y ejecuté:
nauj27@casa:~$ xhost +127.0.0.1
nauj27@casa:~$ export DISPLAY=:0
Con lo que todo quedó todo listo para funcionar ;)





