Fixing the infamous "kernel panic: VFS: Unable to mount root fs" problem.
The Problem (or how I broke it)
So here I am in this cool conference waiting for the sessions to start while doing some work and I decide play a bit with my kubuntu laptop... Maybe it was bootchart, maybe it was insserv, I don't know... what I do know is that after a reboot I got a kernel panic... you know, when the "scroll lock" and "caps lock" lights keep flashing at you in mockery?
The Context
Although there are many things that can cause that error, I was fairly certain that my case had to do with the initrd file. UUID's checked out fine, menu.1st was fine, everything else was OK. Thing is... this is a fairly fresh install and I only had the 1 kernel left on my laptop AND I didn't have a CD/DVD drive readily available...
The Solution
What I did have, however, was a thumb drive and a dell mini 9. I downloaded the kubuntu iso, used unetbootin (installed with sudo apt-get install unetbootin) to put that iso on the thumb drive and booted my laptop from the usb stick.
Now what? To rebuild initrd, I had to mount the root and boot partitions in my HDD from the live CD, chroot to the mounted root and rebuild the initd file, like so: (note that my boot was on /dev/sda3 and my root was on /dev/sda5 and your particular configuration may as well be different)
sudo su - mkdir /mnt/root mkdir /mnt/root/boot mount /dev/sda5 /mnt/root mount /dev/sda3 /mnt/root/boot chroot /mnt/root /bin/bash mount -t proc /proc /proc update-initramfs -u
Then reboot and voila! System works again.
Easy Peasy!
-PCP
- peter's blog
- Login or register to post comments
