This post is about guiding you on how to fix the scary error Failed to Start Light Display Manager Error in Linux systems.
I know you are feeling lost. When you expect something to come up on the screen and suddenly face this particular error. It is uncomfortable because you are lost in a terminal and not sure what to do. So, let’s calm down and try to fix it.
How to Fix – Failed to Start Light Display Manager Error
Why this error?
This error comes from the lightdm package which is a popular Linux system display manager. It is likely caused by any action that you may have taken before this error. More likely it is caused by incorrect package updates or removing certain lightdm related packages or incorrect configurations of lightdm.
The display manager enables the login screen by communicating with X11 server and by failing to do so, the system stalls at the prompt and sometimes with a black screen.
How to Fix
As it may have caused by multiple failure points, hence the solution may differ. Here I am outlining some of the fixes and they may help you to troubleshoot.
When you are stuck at the above screen, press CTRL+ALT+F2 to reach the console mode.
Then log in using any admin id and password. You can log in using your usual user id and when required you can provide the sudo password as well.
First check whether anything wrong with the lightdm systemd service.
systemctl status lightdm
If it gives you status GREEN then something else is broken.
Next, try to run the following command to start lightdm as test mode with debugging switch. This would try to launch lightdm and show you any errors, warnings.
lightdm --test-mode --debug
For this example, as you can see below – it successfully loads everything but in the end, it is not able to find the greeter. The greeter is a graphical login window where you enter your user id and password. And for this case, somehow the greeter is corrupted.
So, the obvious corrective step is to reinstall the greeter and enable the lightdm systemd service. You can use your distribution’s package manager to install the greeter.
For this guide, I am using Arch Linux, hence I ran the following to re-install the lightdm-gtk-greeter –
pacman -S lightdm-gtk-greeter
Then enable the systemd service for lightdm, just in case.
systemctl enable lightdm
And then reboot –
If all goes well, this error should go away and you should get your login screen back.
If above steps did not work, you might want to go over the following troubleshooting options as well. These may work.
- Xorg server is corrupted or not installed. Hence, lightdm is not able to communicate with xorg. Reinstalling xorg package would help. You can reinstall in Arch Linux just using
pacman -S xorg.
- Sometimes the lightdm-gtk-greeter-settings package misconfiguration causes this error. So reinstalling lightdm-gtk-greeter-settings can help as well.
- It always recommended checking whether you have the lightdm service enabled via systemd.
- In the end, check the log of debug mode command carefully. You would find the possible cause of this problem.
- Verify the lightdm log file and xorg log file in the following path for any errors or warnings. The lightdm log file:
/var/log/lightdm/lightdm.log. And the xorg log file
- If you have an advanced system that boots in superfast mode, then lightdm and graphics drivers may run into race conditions. The lightdm service may start before the Kernel loads the graphics drivers. If this is the case, you may try to add the following lines in the
Historically, Nvidia driver updates may cause issues with xorg and lightdm as well. As lightdm depends on xorg to work properly, it might be needed to fix xorg also for errors. The following commands you may use to reconfigure xorg after purging Nvidia driver.
cp /etc/X11/xorg.conf /etc/X11/xorg_backup.conf
sudo Xorg -configure
cp /root/xorg.conf.new /etc/X11/xorg.conf
This error more frequent in Arch Linux and its derivatives such as Manjaro, Arco Linux, etc. I hope the above troubleshooting steps help you to get back to your login screen and your system. Let me know in the comment box below if it helps.