01What You're Actually Looking At
A broken boot is loud and alarming — black screen, GRUB rescue prompt, kernel panic — but it is almost never catastrophic. The data is almost certainly fine. What's broken is the thin layer between the firmware and your running system: a misconfigured GRUB, a corrupted initramfs, or a botched kernel update. Once you understand that, the panic drains away and the fix becomes mechanical.
GRUB rescue, chroot from a live USB, and the calm, ordered steps to get an unbootable machine back.
The two tools that resolve the vast majority of broken boots are the GRUB rescue prompt itself and a live USB with a working Linux environment. Between them, they cover nearly every scenario a routine update or accidental partition edit can create.
02The GRUB Rescue Prompt
If the machine drops to grub rescue> instead of booting, GRUB has lost track of where its own files live. It still knows about your disks. Start by listing what it can see:
grub rescue> lsThis returns device labels like (hd0,gpt1), (hd0,gpt2), and so on. You need to find the partition holding /boot/grub. Try each candidate:
grub rescue> ls (hd0,gpt2)/When you hit the right one, you'll see a directory listing rather than an error. Then set the prefix and root, load the normal module, and hand control back to GRUB:
grub rescue> set root=(hd0,gpt2)
grub rescue> set prefix=(hd0,gpt2)/boot/grub
grub rescue> insmod normal
grub rescue> normalIf the normal GRUB menu appears, select your kernel, boot, then run sudo update-grub (Debian/Ubuntu) or sudo grub2-mkconfig -o /boot/grub2/grub.cfg (Fedora/RHEL) immediately to make the fix permanent. On a SUSE system the command is sudo grub2-mkconfig -o /boot/grub2/grub.cfg as well.
03The Live USB and chroot
When the GRUB rescue prompt isn't enough — a missing or corrupted initramfs, a kernel that won't load, a broken package update mid-flight — you need to get inside the broken system without actually booting it. That's what chroot is for.
Boot from any live USB carrying the same CPU architecture as your installed system. Distribution doesn't matter much; Ubuntu, Fedora, and Arch ISOs all work. Once you have a desktop or shell, identify your root partition:
lsblk -fLook for the partition with your root filesystem — ext4, btrfs, or XFS is typical. Mount it, then mount the virtual filesystems the chroot environment needs:
sudo mount /dev/sda3 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sysIf /boot lives on a separate partition (common on EFI systems), mount that too:
sudo mount /dev/sda1 /mnt/boot/efiNow step inside:
sudo chroot /mntYour prompt changes. You are now running commands inside the broken system, with full access to its package manager and configuration. From here, the most common fixes are:
- Reinstall GRUB (on an EFI system): grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB, then update-grub
- Rebuild initramfs: on Debian/Ubuntu, update-initramfs -u -k all; on Fedora, dracut --force; on Arch, mkinitcpio -P
- Fix a broken package: apt --fix-broken install or dnf reinstall kernel
When you're done, exit the chroot cleanly:
exit
sudo umount -R /mntReboot, remove the live USB, and the machine should come up normally.
04Stay Calm, Work Methodically
The instinct is to thrash — run random commands from a search result, rewrite partition tables, reach for dd. Resist it. Broken boots are almost always a single-layer problem: GRUB, initramfs, or the kernel package itself. Work from the outside in, confirm what you can see before changing anything, and use the live USB as a controlled workspace rather than a panic room.
Keep a live USB on your desk. If you use btrfs snapshots, a broken update becomes a thirty-second rollback instead of a rescue session. Either way, the situation is recoverable — it just requires the right tools, applied in the right order.
The players
Debian Project
Community
community organisation maintaining Debian GNU/Linux
Canonical
Company
company behind Ubuntu, whose live ISO is commonly used for rescue work
Red Hat
Company
enterprise Linux company; RHEL/Fedora use grub2-mkconfig and dracut
SUSE
Company
enterprise Linux company; uses grub2-mkconfig for bootloader configuration
