Description of the issue:
I'm stuck in a login loop with Ubuntu 18.04 64 bit (4.15.0-46-generic x86_64 GNU/Linux
) when I try to login with "Unity (default)" (installed after: https://linuxconfig.org/how-to-install-unity-desktop-on-ubuntu-18-04-bionic-beaver-linux ). Everything was fine before installing/messing with libprotobuf10/15 from a third party PPA (nextgis: https://launchpad.net/~nextgis/+archive/ubuntu/ppa?field.series_filter=bionic ).
What I've tried:
None of the answers here helped: Ubuntu gets stuck in a login loop
Graphic drivers:
I don't have any third party graphic drivers like NVidia or AMD;
$ sudo lshw -c video
*-display
description: VGA compatible controller
product: HD Graphics 5500
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:45 memory:f0000000-f0ffffff memory:e0000000-efffffff ioport:3000(size=64) memory:c0000-dffff
What I've done:
I thought unity was corrupted after installing python3-protobuf
from nextgis
PPA: libprotobuf15 install prompt for removing system packages but after deactivating this PPA, apt-get update
and reinstalling ubuntu-unity-desktop
and the official python3-protobuf
the problem is still there;
$ sudo apt-cache policy ubuntu-unity-desktop
ubuntu-unity-desktop:
Installed: 0.1
Candidate: 0.1
Version table:
*** 0.1 500
500 http://ch.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
100 /var/lib/dpkg/status
$ sudo apt-cache policy python3-protobuf
python3-protobuf:
Installed: 3.0.0-9.1ubuntu1
Candidate: 3.0.0-9.1ubuntu1
Version table:
*** 3.0.0-9.1ubuntu1 500
500 http://ch.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status
I also tried removing .Xauthority
and .ICEauthority
as well as re-configuring lightdm
:
$ sudo dpkg-reconfigure lightdm
but none of them worked.
I precise I can login with gnome without any problems, but with unity, my screen gets black a few seconds and then I'm facing the session login screen again.
Question:
How to recover the unity session?
More informations:
This may help:
the last line of file .xsession-errors
:
A dependency job for unity-session.target failed. See 'journalctl -xe' for details.
And these lines in the output of the journalctl -xe
command I ran just after the buggy login with unity are probably telling us there is something wrong with lightdm
authentication:
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM unable to dlopen(pam_kwallet.so): /lib/security/pam_kwallet.so: cannot open shared object file: No such file or directory
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM adding faulty module: pam_kwallet.so
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM unable to dlopen(pam_kwallet5.so): /lib/security/pam_kwallet5.so: cannot open shared object file: No such file or directory
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: PAM adding faulty module: pam_kwallet5.so
mar 25 11:26:57 username-laptop-1804 lightdm[5441]: pam_succeed_if(lightdm:auth): requirement "user ingroup nopasswdlogin" not met by user "username"
mar 25 11:27:02 username-laptop-1804 systemd-logind[776]: Removed session c6.
-- Subject: Session c6 has been terminated
Some of the dmesg
outputs after 1 unsuccessful login with unity:
$ dmesg | grep -i "warn\|err\|lightdm\|unity"
[ 0.000000] ACPI: IRQ0 used by override.
[ 0.000000] ACPI: IRQ9 used by override.
[ 0.045146] ACPI: EC: interrupt blocked
[ 0.061268] ACPI Error: Needed type [Reference], found [Integer] (ptrval) (20170831/exresop-103)
[ 0.061300] ACPI Error: Method parse/execution failed \_PR.CPU0._PDC, AE_AML_OPERAND_TYPE (20170831/psparse-550)
[ 0.063508] ACPI: Using IOAPIC for interrupt routing
[ 0.072809] ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11)
[ 0.072923] ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 *9 10 11)
[ 0.073033] ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11)
[ 0.073143] ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 *6 7 9 10 11)
[ 0.073252] ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 *11)
[ 0.073334] ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 11) *0, disabled.
[ 0.073444] ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 *10 11)
[ 0.073553] ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 *7 9 10 11)
[ 0.101434] ACPI: EC: interrupt unblocked
[ 3.588547] RAS: Correctable Errors collector initialized.
[ 6.937212] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 10.673768] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[ 10.857401] random: 7 urandom warning(s) missed due to ratelimiting
[ 12.282650] audit: type=1400 audit(1553512054.380:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session" pid=603 comm="apparmor_parser"
[ 12.282653] audit: type=1400 audit(1553512054.380:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/lightdm/lightdm-guest-session//chromium" pid=603 comm="apparmor_parser"
One more thing; there is not differences between the output of dmesg
before trying to login (I output $ dmesg > dmesg0.txt
before), and after the unsuccessful try with unity (I output $ dmesg > dmesg1.txt
after).
Then;
$ diff dmesg0.txt dmesg1.txt
gives me no extra information.
One more piece of information; the result of the command unity --debug
when run from the CLI before starting any session at the greeter:
/usr/lib/x86_64-linux-gnu/unity/compiz-config-profile-setter: error while loading shared libraries: libprotobuf.so.10: cannot open shared object file: No such file or directory
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
/usr/bin/compiz (core) - Info: Loading plugin: core
/usr/bin/compiz (core) - Info: Starting plugin: core
[New Thread 0x7ffff3118700 (LWP 12410)]
Invalid MIT-MAGIC-COOKIE-1 key/usr/bin/compiz (core) - Fatal: Couldn't open display :0
/usr/bin/compiz (core) - Info: Stopping plugin: core
/usr/bin/compiz (core) - Info: Unloading plugin: core
[Thread 0x7ffff3118700 (LWP 12410) exited]
[Inferior 1 (process 12406) exited with code 01]
No stack.
WARNING: no DISPLAY variable set, setting it to :0
I finally succeeded.
The good clue was this error from the
unity --debug
command I mentionned:Even if I deactivated the nextgis PPA,
libprotobuf10
was referenced as version 3.5.x byapt-cache policy
, that meant it was the version packages from this PPA. Butapt-cache policy
has no '500' code and no associated PPA URL as the nextgis PPA from where the version 3.5.x came was removed!And a
$ find /usr -iname "*libprotobuf.so*"
only gave me:And the
apt-get install --reinstall libprotobuf10
command didn't work, as it was not able to download (downgrade to) the previous official 3.0.x version from the official repositories!What I did:
So, I removed it (
libprotobuf10
) withapt-get
:and this command wanted to remove all these packages as well:
which I confirmed!
To be safe, prior to the confirmation, I copied/pasted this list of packages in a text file! After what I reinstalled them all with
apt
.And of course, I reinstalled
libprotobuf10
. This time it worked andapt
was able to install the version 3.0.x from the official Ubuntu repositories.This has fixed the unity login issue.
Now: