GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Habilitar el acceso a la pantalla X para el usuario local?

Estoy usando GitLab CI para ejecutar pruebas automatizadas en una configuración de Ubuntu 14.04. El ejecutor GitLab CI creó un nuevo usuario, gitlab-runner , que ejecuta todas las pruebas. Ahora estas pruebas incluyen componentes GUI, por lo que necesito una pantalla X, que fuerzo incluso sin una pantalla física a través de ConnectedMonitor y CustomEDID opciones en el xorg.conf .

El problema es que cuando el usuario gitlab-runner inicia una prueba a través de DISPLAY=:0.0 ./runTestApp , recibo un “No se pudo conectar a la pantalla:0.0” error. Puedo solucionarlo iniciando sesión como usuario normal en la estación de trabajo y ejecutando sudo DISPLAY=:0.0 xhost + .

Sin embargo:

  1. No he encontrado una forma de ejecutar correctamente xhost + de forma automática al inicio (intenté ponerlo en /etc/rc.local )
  2. La página man dice que xhost + en realidad es muy inseguro, pero no he descubierto qué hacer en su lugar. Parece que podría tener que ver con una .Xauthority file (que tiene mi usuario habitual, pero gitlab-runner no)

¿Cuál es la mejor manera de dar gitlab-runner acceso permanente a la pantalla X?

Respuesta aceptada:

Primero, para otorgar acceso solo al ejecutor Gitlab CI, debe usar un comando más restringido:

xhost +SI:localuser:gitlab-runner

Segundo, /etc/rc.local se ejecuta demasiado pronto para que este comando tenga efecto y, además, debe configurar $DISPLAY para que funcione.

Depende de cómo se inicie su servidor X. Si está utilizando LightDM, creo que puede hacer que funcione agregando la siguiente línea a /etc/lightdm/lightdm.conf :

greeter-setup-script=xhost +SI:localuser:gitlab-runner

Ubuntu
  1. ¿Dar acceso a Virtualbox solo a usuarios específicos?

  2. ¿Cómo habilitar el "otro" usuario para iniciar sesión con Active Directory?

  3. ¿Existe un equivalente de Homebrew para cuentas de usuario de acceso limitado en Linux?

  4. Acceso denegado para un usuario en particular por la configuración de la cuenta PAM

  5. No se puede obtener el acceso SSH para un nuevo usuario

Cómo resolver un error de MySQL:acceso denegado para el usuario [email protected]

Cómo habilitar el acceso a la consola Virsh para invitados KVM

Las 10 mejores extensiones de Google Chrome para todos

Cómo habilitar Sudo sin contraseña para usuarios en Linux

Usuarios Webmin

¿Cómo habilitar la tecla Alt Gr como Alt R para Emacs en Ubuntu 16.04?