Error Codes Wiki

Linux Kernel Panic — Not Syncing: VFS Unable to Mount Root

Criticalboot

Overview

Fix Linux kernel panic 'not syncing: VFS: Unable to mount root fs' caused by missing initramfs, wrong root= parameter, or missing filesystem drivers.

Key Details

  • Kernel panic 'VFS: Unable to mount root fs on unknown-block' means the kernel cannot find the root filesystem
  • The kernel loads, but cannot mount / to continue booting into userspace
  • initramfs (initial RAM filesystem) contains drivers needed to access the real root filesystem
  • Missing initramfs means no drivers for SATA, NVMe, RAID, or LVM needed to read the root partition
  • Wrong root= kernel parameter points to a non-existent or differently named partition

Common Causes

  • Missing or corrupted initramfs/initrd image
  • Kernel updated but initramfs not regenerated
  • Wrong root= parameter in GRUB config (UUID changed or partition reordered)
  • Filesystem driver not compiled into kernel or initramfs (ext4, xfs, btrfs)
  • LVM, RAID, or LUKS encryption drivers missing from initramfs

Steps

  1. 1Boot from Live USB and mount root: sudo mount /dev/sdXY /mnt
  2. 2Chroot: mount --bind /dev /mnt/dev && mount --bind /proc /mnt/proc && mount --bind /sys /mnt/sys && chroot /mnt
  3. 3Regenerate initramfs: update-initramfs -u (Debian/Ubuntu) or dracut -f (Fedora/RHEL)
  4. 4Verify root= in GRUB: cat /boot/grub/grub.cfg | grep root= — compare UUID with blkid
  5. 5Update GRUB: update-grub to regenerate config with correct UUIDs

Tags

linuxkernel-panicbootinitramfsvfs

More in Boot

Frequently Asked Questions

A temporary root filesystem loaded into RAM at boot containing drivers and tools needed to mount the real root filesystem.