Failed to automatically start Light Display Manager after update

Hello!

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 graphical.target 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
logind-check-graphical=true
  • 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.