Failed to automatically start Light Display Manager after update


After updating my PC today, lightdm has not being able to start automatically. I can access a tty and startx from there, but I don’t think this is optimal. My wm is i3, but I don’t think it has anything to do with this…

The thing is, from a tty, I can systemctl start lightdm.service and it starts as expected without any problem and I’m able to log in normally from it.

If right after login in the tty I run systemctl status lightdm.service I get:

× lightdm.service - Light Display Manager
     Loaded: loaded (/usr/lib/systemd/system/lightdm.service; enabled; vendor preset: disabled)
     Active: failed (Result: exit-code) since Tue 2021-09-28 10:11:37 CEST; 14s ago
       Docs: man:lightdm(1)
    Process: 818 ExecStart=/usr/bin/lightdm (code=exited, status=1/FAILURE)
   Main PID: 818 (code=exited, status=1/FAILURE)
        CPU: 15ms

sep 28 10:11:37 i3-pc systemd[1]: lightdm.service: Scheduled restart job, restart counter is at 5.
sep 28 10:11:37 i3-pc systemd[1]: Stopped Light Display Manager.
sep 28 10:11:37 i3-pc systemd[1]: lightdm.service: Start request repeated too quickly.
sep 28 10:11:37 i3-pc systemd[1]: lightdm.service: Failed with result 'exit-code'.
sep 28 10:11:37 i3-pc systemd[1]: Failed to start Light Display Manager.

If I try to run lightdm --test-mode --debug I get:

[+0.00s] DEBUG: Logging to /home/guzman/.cache/lightdm/log/lightdm.log
[+0.00s] DEBUG: Starting Light Display Manager 1.30.0, UID=1000 PID=1716
[+0.00s] DEBUG: Loading configuration dirs from /var/lib/snapd/desktop/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /usr/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /usr/local/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /etc/xdg/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG: Running in user mode
[+0.00s] DEBUG: Registered seat module local
[+0.00s] DEBUG: Registered seat module xremote
[+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
[+0.02s] DEBUG: _g_io_module_get_default: Found default implementation gvfs (GDaemonVfs) for ?gio-vfs?
[+0.02s] DEBUG: Monitoring logind for seats
[+0.02s] DEBUG: New seat added from logind: seat0
[+0.02s] DEBUG: Seat seat0: Loading properties from config section Seat:*
[+0.02s] DEBUG: Seat seat0 has property CanMultiSession=no
[+0.02s] DEBUG: Seat seat0: Starting
[+0.02s] DEBUG: Seat seat0: Creating greeter session
[+0.02s] DEBUG: Loading users from org.freedesktop.Accounts
[+0.02s] DEBUG: User /org/freedesktop/Accounts/User1000 added
[+0.02s] DEBUG: Seat seat0: Creating display server of type x
[+0.02s] DEBUG: Could not run plymouth --ping: Failed to execute child process ?plymouth? (No such file or directory)
[+0.02s] DEBUG: Seat seat0: Starting local X display
[+0.02s] DEBUG: XServer 0: Logging to /home/guzman/.cache/lightdm/log/x-0.log
[+0.02s] DEBUG: XServer 0: Writing X server authority to /run/lightdm/root/:0
[+0.02s] WARNING: Error reading existing Xauthority: Failed to open file ?/run/lightdm/root/:0?: Permission denied
[+0.02s] WARNING: XServer 0: Failed to write authority: Failed to open X authority /run/lightdm/root/:0: Permission denied
[+0.02s] DEBUG: XServer 0: Launching X Server
[+0.02s] DEBUG: Launching process 1735: /usr/bin/X :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp
[+0.02s] DEBUG: XServer 0: Waiting for ready signal from X server :0
[+0.02s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.02s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.02s] WARNING: Could not enumerate user data directory /var/lib/lightdm-data: Error opening directory '/var/lib/lightdm-data': Permission denied
[+0.02s] DEBUG: Process 1735 exited with return value 1
[+0.02s] DEBUG: XServer 0: X server stopped
[+0.02s] DEBUG: XServer 0: Removing X server authority /run/lightdm/root/:0
[+0.02s] DEBUG: Seat seat0: Display server stopped
[+0.02s] DEBUG: Seat seat0: Stopping session
[+0.02s] DEBUG: Seat seat0: Session stopped
[+0.02s] DEBUG: Seat seat0: Stopping display server, no sessions require it
[+0.02s] DEBUG: Seat seat0: Stopping; greeter display server failed to start
[+0.02s] DEBUG: Seat seat0: Stopping
[+0.02s] DEBUG: Seat seat0: Stopped
[+0.02s] DEBUG: Required seat has stopped
[+0.02s] DEBUG: Stopping display manager
[+0.02s] DEBUG: Display manager stopped
[+0.02s] DEBUG: Stopping daemon
[+0.02s] DEBUG: Exiting with return value 1

Also, running systemctl get-default outputs as expected.

I’m happy to provide anything else you may need to help me. Also I’ve considered getting rid of lightdm and always login from tty and starting x after that, but I’m not sure of all unintended long term consequences that may have for a not so savvy user like me… Thanks for your help!

came here for same issue … x wont start automatically, sometimes screen resolution off set and messed up, have to restart, then manually login and startx

Does this help?:

  • Edit /etc/lightdm/lightdm.conf
  • Uncomment (remove the # from) the line logind-check-graphical and change its value to true if necessary
  • Save and reboot
1 Like

That worked like a charm! Funny thing is that I remember setting that variable to true a time ago when I was installing the OS, so I guess it’s possible that the update overwrote the config file? That could be problematic long term…

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.