How to troubleshoot boot failure
Topic: Servers linux
Summary
When Linux fails to boot, use rescue or recovery mode from the installer or a live image to mount the root filesystem, fix fstab or initramfs, and repair broken config. Use this when the system hangs at boot, drops to emergency mode, or fails to mount root.
Intent: Troubleshooting
Quick answer
- Boot from install ISO or recovery kernel; choose rescue or recovery mode. Mount root at /mnt (e.g. mount /dev/sda1 /mnt); chroot /mnt to get a shell in the broken system.
- Common fixes: correct /etc/fstab (wrong UUID or missing device), regenerate initramfs (update-initramfs or dracut), fix fsck errors (run fsck on the partition), remove bad kernel or module from grub.
- Check logs in /mnt/var/log and journal from the failed boot (if available); fix the underlying cause then exit chroot and reboot from disk.
Prerequisites
Steps
-
Boot into rescue environment
Boot from same-distro install ISO or recovery; select rescue/recovery mode. Mount the root partition (e.g. sudo mount /dev/sda1 /mnt); if separate, mount /boot and /var as needed; mount --bind /dev /mnt/dev; mount --bind /proc /mnt/proc; mount --bind /sys /mnt/sys.
-
Chroot and diagnose
sudo chroot /mnt /bin/bash. Check /etc/fstab for wrong UUIDs or missing devices; run blkid and compare. Check /var/log/syslog or journalctl for the failed boot; look for mount errors, fsck, or missing modules.
-
Apply fix and reboot
Edit fstab, run update-initramfs -u or dracut -f, or run fsck on the affected partition (unmounted). Exit chroot; unmount; reboot from disk and remove the rescue media so the system boots normally.
Summary
Boot from a rescue or live image, mount root and chroot in, then fix fstab, initramfs, or filesystem errors. Use this when the system does not complete boot or drops to emergency mode.
Prerequisites
- How to mount disks and use fstab.
- Filesystem hierarchy and essential paths.
- How to manage services with systemd.
Steps
Step 1: Boot into rescue environment
Boot from install ISO, choose rescue/recovery. Mount root (e.g. /dev/sda1 at /mnt), bind /dev, /proc, /sys into /mnt so chroot works.
Step 2: Chroot and diagnose
sudo chroot /mnt /bin/bash
Inspect /etc/fstab, blkid, and logs (e.g. journalctl, /var/log) for mount or initramfs failures.
Step 3: Apply fix and reboot
Fix fstab, regenerate initramfs, or run fsck as needed. Exit chroot, unmount, reboot from disk.
Verification
- System boots to login or target without rescue media; no mount or initramfs errors in logs.
Troubleshooting
Root not found — Wrong partition or UUID in fstab; check blkid and fix. Initramfs missing or corrupt — Regenerate with update-initramfs or dracut. Disk full at boot — Free space from rescue (delete or move logs) then reboot.