Disk by UUID not detected (initramfs), boot failure
I had the same issue like the thread starter and I solved it without reinstalling.
My issue occurred while juggling with a virtual installation based on a copied disk image. This resulted in a changed uuid and the copy wouldn't start. This is a rough sketch of what i did.
First boot using a rescue system (same version) and run a shell on your non-booting disk.
Have a look at /etc/fstab
and confirm the uuids there by issuing the blkid
command for each device. Fix these entries as they're important.
Next we fix grub with:
grub-mkconfig
update-grub
Then run:
update-initramfs -u /boot/initrd.img-2.6.YOURVERSION-HERE
This will create a fresh initramdisk for your version. If you don't know the exact version you were running have a look at the files in /boot/. Picking the highest version number should be safe.
After you exit the rescue shell the ubuntu live cd will offer you the last menu from where you entered the shell. Choose "install Grub" (or similar) there and enter the device where to put your boot sector.
On most systems (standard install) /dev/sda
is a safe bet. Be aware: Windows- or other multiboot-systems might need other entries here!
Finally you should be able to boot from the repaired disk.
The problem seems to be that your hard disk, or the controller, doesn't respond quickly enough.
Try the following:
When the boot menu comes up, having the top of the list highlighted, press e (for edit).
You should see a long list of parameters. Add this one to it:
rootdelay=130
Hit Enter and then b (boot). Try to see if you system boots now. You can increase the value if that doesn't help first time (but not by much, 130 is already more than enough for any hardware that isn't broken).
However, it may also be your hard drive is failing. The first thing to do once you get back into your system is backing up your data. If you want to be safe, back it up using an ubuntu cd. I strongly urge you to do that, sooner rather than later.
As a matter of fact I have experienced disk UUIDs changing spontaneously once or twice. The change may be the result of a corruption of some sort. I would try the following:
- Boot your computer from a live medium;
fdisk -l /dev/sda
to find the partition you're looking for; or usecfdisk; or use
gparted(replace
sda` by your hard drive).blkid /dev/sda1
(replacesda1
by the partition you found); alternatively usevol_id
;- see if you can mount the partition (using the device file
/dev/sda1
); - check if the UUID displayed matches with the UUID in your root partition's
/etc/fstab
; - generate a new UUID using
uuidgen
and apply it to the partition usingtune2fs -U
; - change the
fstab
entry accordingly.
It might seem unlikely that something as vital as the UUID changes without apparent cause, but it happens, probably because of a bug. See if changing the UUID to a new value helps.