Fixing Linux Boot Failure Due to fstab Mount Errors
If you’ve edited /etc/fstab incorrectly or a disk UUID has changed, Linux may fail to mount a filesystem during boot — leaving you stuck at an emergency shell or a completely unbootable system. Here’s how to fix it.
The Problem
When Linux boots, it reads /etc/fstab to mount filesystems. If an entry is invalid (wrong UUID, missing disk, syntax error), you’ll see something like:
A start job is running for /dev/disk/by-uuid/xxxx (1min 30s / 1min 30s)
[FAILED] Failed to mount /mnt/data.
[DEPEND] Dependency failed for Local File Systems.
You are in emergency mode. After logging in, type "journalctl -xb" to view system logs...
Give root password for maintenance
(or press Control-D to continue):
At this point, your system won’t boot normally.
Solution: Boot into a Root Shell via GRUB
Step 1: Access GRUB menu
When your computer starts, hold Shift (or Esc on some systems) to access the GRUB boot menu.
Step 2: Edit boot parameters
- Highlight Ubuntu (or your Linux entry)
- Press
eto edit
Step 3: Modify the boot line
Find the line starting with:
linux /boot/vmlinuz-...
Replace:
ro quiet splash
with:
rw init=/bin/bash
(Or append rw init=/bin/bash at the end of that line)
Step 4: Boot
Press Ctrl + X to boot with the modified parameters.
Step 5: Edit fstab
You’ll be dropped into a root shell with the filesystem mounted read-write. Now edit fstab:
nano /etc/fstab
Find the problematic line and either:
- Fix the UUID — use
blkidto find the correct UUID - Comment it out — add
#at the beginning of the line - Add
nofail— appendnofailto the options so boot continues even if mount fails
Example of adding nofail:
UUID=xxxx-xxxx /mnt/data ext4 defaults,nofail 0 2
Step 6: Reboot
exec /sbin/init
Or force a reboot:
reboot -f
Done! Hopefully this saves you from a headache next time your Linux system refuses to boot.
Enjoy Reading This Article?
Here are some more articles you might like to read next: