Support Articles
Black Screen or Login Issues (Pop!_OS 22.04 LTS)
Sometimes after an upgrade, your system might not bring you to the desktop after logging in. If you try logging in and you just see a black screen, or Pop!_OS brings you back to the login screen, you're experiencing a login loop. There are several causes for login loops:
- Issues with decryption, or the GUI decryption screen.
- Configuration files in your home directory are not compatible with new versions of software
- The display/login manager is not working correctly
- The NVIDIA driver has been updated and is causing an issue
- The AMD Radeon driver is being loaded and causing issues
Each cause has a different solution, and certain items (such as NVIDIA) might not be applicable to your system. In most cases, you can switch to a full-screen terminal (called a TTY) to log in and fix the issue.
Encryption Screen Issues
Enryption Passphrase
If entering your decryption passphrase does not unlock your disk, one of two things is likely the cause:
- The decryption passphrase is incorrect.
- Your keyfile has been corrupted (rare).
In either case, unless you have set an alternative decryption key, the drive will need to be erased and re-imaged to regain acess. This is the cost/benefit of drives secured by encryption. It's important to have current backups of your files to avoid data-loss.
Correct Passphrase, No Login Screen
If your decryption passphrase is correct, but you're unable to reach the login screen, some of the packages that first run on login may need reinstalled. One symptom of this situation, will be if the screen freezes on "cryptdata setup successfully" (pictured below):
To correct this, follow the steps below. If you're unable to reach a Terminal, refer to the "Recovery" section below.
Switch to a Terminal
At the login screen, press Ctrl+Alt+F5 to switch to a TTY. You'll be prompted to enter a login. At the login
prompt, enter your username and press Enter. You'll then be prompted for your password. You will not see your password as you are typing it; just type it and press "Enter."
If you're not able to log in, the reason could be:
- Wrong username: your username may not be the same as your display name. It is often your first name all lowercase, first and last name all lowercase, or first initial and last name all lowercase.
- Wrong password: you're notified of this at the graphical login screen.
- Something else is blocking the login.
The easiest way to confirm your username is by booting into recovery mode, entering a chroot, and running ls
in the /home
directory, as outlined in the Password Reset article. If your username and password are both correct, then something else is blocking the login. This is a difficult issue to troubleshoot, and you might want to consider backing up your files from a live disk and Reinstalling Pop!_OS or contacting Support for more assistance.
After logging in, you'll be presented with a prompt showing your username, hostname, and a tilde (~) representing your home directory.
Note that you can always return to the graphical login screen by pressing Ctrl+Alt+F1, or by typing sudo systemctl restart gdm
.
Move old configuration files out of the way
To determine whether configuration in your home directory is causing the issue, you can create a new user account for testing purposes:
sudo adduser test
sudo systemctl reboot
If you're able to log in with the test user, the issue is somewhere in your regular user's home folder. Log into the full-screen terminal with your regular user again, and move some of the common configuration files out of the way:
mv ~/.config ~/.config.old
mv ~/.local ~/.local.old
mv ~/.cache ~/.cache.old
mv ~/.nvidia-settings-rc ~/.nvidia-settings-rc.old
mv ~/.nv ~/.nv.old
sudo systemctl reboot
After moving those files and rebooting, try logging in again. (There may be files you need to move other than the common ones listed above.)
xorg.conf
file out of the way
Move If display settings have been corrupted or modified incorrectly, it's good to remove the xorg.conf
.
mv /etc/X11/xorg.conf /etc/X11/xorg.conf.old
By default, X11 config files are instead stored here:
/usr/share/X11/xorg.conf.d
xorg.conf
files saved in /etc/X11
can cause displays issues on boot, and should be avoided wherever possible.
Reinstall the login manager
You can reinstall GNOME Display Manager (which handles the login screen), along with the desktop environment. On Pop!_OS:
sudo apt install --reinstall gdm3 pop-desktop gnome-shell
sudo systemctl reboot
After reinstalling those packages and rebooting, try logging in again.
Reinstall NVIDIA Driver
If your system is equipped with NVIDIA graphics, a recent update might be causing the login issues. (Usually, NVIDIA driver issues will prevent the login screen from loading at all; however, it's still worth reinstalling if you are unable to log in after the above steps.) Run these commands to determine if your system has NVIDIA graphics:
lspci -v | grep VGA
To remove the NVIDIA driver, run the following:
sudo apt purge ~nnvidia
sudo apt autoremove
sudo apt clean
After the NVIDIA driver has been removed, add it back using the following commands:
sudo apt update
sudo apt full-upgrade
sudo apt install system76-driver-nvidia
After the installation has completed, type sudo systemctl reboot
and try logging in again.
Blacklist Radeon Driver
If you are using an AMD graphics card, the radeon driver might be causing issues as it does not support newer versions of Ubuntu. The amdgpu driver that comes with the kernel does however. To blacklist the radeon driver and ensure amdgpu is loaded:
Open /etc/modprobe.d/blacklist.conf
for editing and add blacklist radeon
to the file. Then run:
sudo update-initramfs -c -k all
sudo shutdown -r now
Recovery
We have an article on accessing the Recovery Partition here
To access Recovery, turn your computer off, then turn it back on and hold down the space bar immediately. In the menu that appears, select PopOS Recovery, and let it boot.
Once it boots, close out of the installation window or choose “try demo mode” (be sure not to choose any install or repair options, as this could result in data loss).
With the installation window closed, open a Terminal, mount the drive, and chroot (change to root) into the system (refer to the Repair and Chroot sections of the Recovery article).
Once chrooted in, run the following commands:
sudo apt clean
sudo apt update -m
sudo dpkg --configure -a
sudo apt install -f
sudo apt full-upgrade
sudo apt autoremove --purge
Then:
sudo apt install --reinstall plymouth gdm3 gnome-shell pop-desktop linux-generic linux-headers-generic
The command above is one line, and will reinstall plymouth (the graphical encryption screen), gnome display manager (gdm3), gnome-shell, the pop-desktop environment, and the linux-kernel.
Once the reinstallation has finished, we'll want to run:
update-initramfs -c -k all
And finally:
exit
reboot
To exit the chroot environment, and then reboot the system.
If these steps don't work
Contact Support! We have a few more things to try. There are a significant number of processes and files required for your graphical desktop environment to be loaded, and much fewer for the terminal login. As such, you can usually recover your desktop using the command line interface!