Bucle de inicio de sesión después de la actualización a 16.04

Bucle de inicio de sesión después de la actualización a 16.04

Encontré un bucle de inicio de sesión después de actualizar xenial beta a las últimas actualizaciones.

Probé muchas cosas:

  • xauthorityo /tmpcambio de privilegios

  • Reinstalar los controladores de nvidia, eliminarlos.

  • reinstalar unity, unity-greeter, ubuntu-desktop, y .upstartlightdmcompiz

  • restablecimiento compizy unityconfiguración. (Recibo dbuserrores de inicio:

    Failed to commit changes to dconf: error spawning command line 'dbus-launch -auto launch=..................)
    
  • usando un kernel antiguo y a prueba de fallos (el informe de seguridad no encontró ninguna pantalla)

  • Intenté lanzar otro DE (panorama general de Steam)

Aquí está el registro de errores de xsession:

unity:
open connection: connect: No such file or directory
Cannot connect to brltty at :0
upstart: gnome-session (unity) main process (5441) terminated with status 1
upstart unity-settings-daemon main process (5434) killed by TERM signal

steam big picture:
open connection: connect: No such file or directory
Cannot connect to brltty at :0
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored.
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored
Could not create GLX context
ERROR: ld.so: object '/usr/lib/i386-linux-gnu/libmodeswitch_inhibitor.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file(: ignored

En el registro de Unity (compiz) hay muchos errores sobre el complemento opengl

Compiz (opengl) - Fatal: glXQueryExtenisonsString is NULL for screen 0

Y muchos complementos se descargaron gracias a opengl.

Lightdm tiene una señal SIGTERM repentina sin errores previos en el registro.

xserver tiene 2 errores:

xf86EnablePorts: failed to set IOPL for I/O (Operation not permitted)
(EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)

Pero continúa a través de operaciones de entrada hasta que de repente se termina.

Respuesta1

En mi caso, la causa fueron los controladores originales de nvidia y volver al código abierto nouveau ayudó. Primero, eliminé todo el material de nvidia:

sudo apt-get remove --purge 'nvidia-*'
sudo apt-get install ubuntu-desktop
sudo rm /etc/X11/xorg.conf
echo 'nouveau' | sudo tee -a /etc/modules

(fuente:¿Cómo puedo desinstalar completamente un controlador nvidia?)

Después de eso pude iniciar sesión, pero Unity no se cargó, no había un iniciador, etc. Resultó que tuve que volver a habilitar el complemento de Unity:

sudo apt-get install compizconfig-settings-manager
DISPLAY=:0 ccsm
Find the Unity plugin and enable it.

(fuente:Unity no se carga, no aparece ningún Launcher ni Dash)

Respuesta2

El problema es que, cuando actualizas Ubuntu (e incluso cuando instalas ciertos programas que llaman /sbin/ldconfig), se realizan cambios en /etc/ls.so.cache.

Pruébelo y verá que el ld.so.cachearchivo después de dicha instalación/actualización tendrá un tamaño diferente al que tenía antes de la operación.

Esto, en Ubuntu 16.04, da como resultado un bucle de inicio de sesión al iniciar sesión desde lightDM. Por lo tanto, debe conservar una copia del original ld.so.cacheya que, con la nueva versión generada después de la instalación/actualización, lightDM ya no se autenticará.

He tenido este problema muchas veces y he tenido que tener mucho cuidado con esto. Siempre guardo una copia del archivo original ( /etc/ld.so.cache.orig) que me permite iniciar sesión sin el bucle de inicio de sesión y la uso para iniciar sesión. Luego, una vez que he iniciado sesión correctamente, copio el nuevo ( /etc/ld.so.cache.new). Para hacerlo, modifiqué mi ~/.bash_profilearchivo y agregué esta línea:

sudo /bin/cp /etc/ld.so.cache.new /etc/ld.so.cache

Luego, para poder volver a copiar el archivo original al salir de la sesión y poder iniciar sesión la próxima vez, agregué esta línea a /etc/gdm/PostSession/Default:

/bin/cp /etc/ld.so.cache.orig /etc/ld.so.cache

Para que eso funcione, he modificado /etc/sudoers(ejecutando sudo vosudo) para permitir que usuarios sin privilegios ejecuten el comando copiar:

ALL     ALL= NOPASSWD: /bin/cp /etc/ld.so.cache.new /etc/ld.so.cache

Esto puede parecer un truco feo, pero soluciona este problema del bucle de inicio de sesión y, también, conserva el nuevo /etc/ld.so.cachearchivo.

Respuesta3

También tuve el mismo error el 16.04. En mi caso también fue un problema con el controlador NVidia. Tengo 8 monitores y me gusta cómo se desenvuelve el NVidia diver con ellos. Entonces, para que funcione, yo:

  1. Presionó CTRL+ ALT+ F1en el mensaje de inicio de sesión e inició sesión a través de la terminal.

  2. Se hizo una copia de seguridad de muchos archivos antiguos /etc/X11/xorg.conf, ya que fue complicado configurar 8 monitores.

  3. Descargué el archivo del controlador de NVidia:NVIDIA-Linux-x86_64-367.44.run

  4. Ejecutó el siguiente comando: sudo service lightdm stop(la instalación del controlador fallará si se omite este paso).

  5. Reinstalé el controlador: sudo ./NVIDIA-Linux-x86_64-367.44.runme notificaron que el script generado automáticamente no se completó y me dieron la opción de continuar con la instalación, lo cual acepté. También elegí instalar el controlador como un módulo del kernel y hacer que el programa genere un nuevo xorg.confarchivo (con una copia de seguridad del mío antes). Al final del proceso, se quejó de que faltaba un enlace a una biblioteca, pero dio instrucciones para vincularla. Dejé de ocuparme de eso para más tarde.

  6. Reinicié y pude iniciar sesión a través de la GUI.

Respuesta4

En mi caso, este problema se produjo al habilitar accidentalmente el arranque seguro en UEFI, lo que hace que los controladores de terceros queden inutilizables (por ejemplo, Nvidia). Eso provocó un error de sesión X. Después de desactivar el arranque seguro, todo volvió a la normalidad.

información relacionada