[HowTo] Resolve an unbootable EndeavourOS system (black screen, login failed, cant boot, etc)

When we have problems gaining access to our systems it is difficult to gather information, let alone fix any problems. Here we will cover common causes and solutions to ‘endeavour wont boot’.


TTY

If your desktop does not load properly then you might still be able to use most, if not all, functionality by dropping to a non-graphical TTY.

By default your system will have multiple TTYs, with each corresponding to an Fx key. Your desktop is assigned to one as well - most often F1.

You can change TTYs through a combination of Ctrl+Alt+Fx (F1-F6).

Meaning often our first steps would be CTL+ALT+F2.

If greeted with a login prompt then login with your user name and password.


Grub and systemd-boot options and Boot Parameters

If you are never prompted for sign-in you can still take action by changing your boot options.

At the Grub or systemd-boot menu, make your selection and and hit E to edit the kernel boot line.

Note: Some systems may have the boot menu hidden by default.
If this is the case tap Esc or Shift to make it appear.

  • Runlevel 3

Linux systems have defined 'run-level’s denoting which services are loaded at boot.
They are defined as follows:

0 = halt, 1 = single-user-mode, 2 = multi-user-mode, 3 = multi-user-mode+networking, 4 = undefined, 5 = multi-user-mode+networking+displaymanager, 6 = reboot

As shown above, we normally boot into runlevel 5. But it can be useful, such as in the case of broken gfx drivers, to use runlevel 3.

In the grub editor look for the line beginning with linux , it should look like this:
linux /boot/vmlinuz-4.11-x86_64 root=UUID=0a01099a-1e33-489a-a2de-10104e8492f5 rw quiet

Simply add a 3 to the options at the end of the line (and optionally remove ‘quiet’) so it appears like this:
linux /boot/vmlinuz-4.11-x86_64 root=UUID=0a01099a-1e33-489a-a2de-10104e8492f5 rw 3

To continue booting use the Enter key for systemd-boot or the F10 key if using Grub.

If greeted with a login prompt then log in with your user name and password.

  • Other options

A handful of other options that may be helpful are:
acpi=off, nolapic, nomodeset, and %driver%.modeset=0 ex: radeon.modeset=0


Chroot

If you are unable to recover using the installed system you can use another medium such as a CD or USB

Create or just reuse an already existing EndeavourOS Live USB (such as the one you used to install your system).

arch-chroot

From the live system execute these commands to utilize arch-chroot;

First to obtain an overview of the partitions:

sudo lsblk -f

In the following example we will assume /dev/sda1 is the $ESP and /dev/sda2 is root.

:information: LUKS encryption will require unlocking before mounting. :information:

Then we mount the necessary partitions and start arch-chroot at the mountpoint:

sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/efi ## (or /mnt/boot/efi)
sudo arch-chroot /mnt

You should now have access to your installed system.

More information can be found at the EOS wiki here.

Manual chroot

If for whatever reason the arch-chroot script does not work for you then manually chrooting may be another option.

Just about everything you would need to know is at the archwiki:


I have access. Now what?

That really depends on the substance of the particular issue you are experiencing.

Some other helpful tutorials will go here at some point.

Good Luck!

15 Likes

Putting it all together—much appreciated, thanks!

Thanks for that. What for me also worked is to login via ssh from another machine.