30

I've just installed Ubuntu 12.10 to dual boot with Windows 8, but every time I choose Ubuntu from grub menu, it always get stuck at this error and won't boot:

Gave up waiting for root device. Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
   - Check root= (did the system wait for the right device?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/920903aa-762f-40d2-8126-87f4b0e6f975 does not exist. Dropping to a shell!

BusyBox v1.19.3 (Ubuntu 1:1.10.3-7ubuntu1.1) built-in shell (ash)
Enter 'help' for a lost of built-in commands.
(initramfs)

I tried with boot-repair, but it doesn't help, here is the log generated it.

Braiam
  • 67,791
  • 32
  • 179
  • 269
  • 2
    Not going to "waste" an answer just as if trying hard fishing for rep points. The following +50 answer may already get some of you guys you out of your misery: http://askubuntu.com/questions/361886/cannot-find-root-device-after-latest-kernel-upgrade/363345 For those with "exotic" hardware, note the 6th pitfall, which I've just added recently to Braiam's great post. (i e. either missing linux-image-extra, or it got "destroyed" when upgrading kernel) – syntaxerror Feb 10 '16 at 02:29
  • @syntaxerror That's what helped me. Thanks! For some reason, my issue with my system failing to find the NVMe root device, but only when VMD controller was enabled; but a different issue if it was disable. – Chef Pharaoh Sep 18 '23 at 22:55

6 Answers6

58

I had the very same problem. Thing is that I had the laptop off for long time and when I switched it on it showed the same message. Apparently some configurations changed (most likely to a default setting) with the machine off for long time.

I solved it following this link here on Stack Exchange:

"initramfs" error on boot ONLY on Dell XPS 13 (boots fine on other computer)

Solution is:

  • Reboot.
  • Press F12 and go to the BIOS settings.
  • System Configurations → SATA Operations
  • Change RAID to AHCI
Eliah Kagan
  • 117,780
3

If you installed Ubuntu Desktop onto a partition/hard drive which is part of a RAID array, or an encrypted disk, or on Windows ME, it will likely fail to boot. Installing Ubuntu Desktop onto one of these sources is not supported.

If you have installed Ubuntu Desktop to one of the above sources, and it won't boot:

  1. Uninstall Ubuntu.
  2. Install Ubuntu to a hard drive or partition which is not part of a RAID array, not encrypted, and not on Windows ME, and it should boot up just fine.
2

I also occurred same problem but I can solve it using following link

http://blog.wittchen.biz.pl/ubuntu-system-boot-problem/

Attempt #1

First, I tried to change rootdelay as error message said. I opened file /etc/default/grub I found there the following line: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" and changed it to: GRUB_CMDLINE_LINUX_DEFAULT="rootdelay=90 quiet splash" rootdelay became longer, but unfortunately it didn’t fix the problem in my case.

Attempt #2

I edited /etc/fstab file. I executed the following command in terminal: sudo gedit /etc/fstab and edited fstab file in gedit. In the beginning my file looked like that:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=96889309-5f73-4688-8354-e64cd1bb158f /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=480cc3f7-a39d-4d0f-93d5-49fc8df1a392 none            swap    sw              0       0

Then, I commented one line and added another one describing /dev/sda1 disk device. Now, my file looks as follows:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=/dev/sda1  /               ext4    errors=remount-ro 0       1
# UUID=96889309-5f73-4688-8354-e64cd1bb158f /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=480cc3f7-a39d-4d0f-93d5-49fc8df1a392 none            swap    sw              0       0

Problem still existed, so I tried another attempt to solve it.

Attempt #3

I opened terminal and typed the following command:

sudo grub-install /dev/sda

and then I typed another command to update grub:

sudo update-grub

After all of this, I rebooted computer and finally, error disappeared and problem was fixed!

0

I have got same issue while i'm doing patched for entire system which includes kernel. unfortunately package broken which leads kernel was partially upgrade and corrected.

I was scared about issue since where mail server was hosted and data also reside in the same machine.

I google it. tried all possible concepts as below.

1. Booting with live cd
2. doing fsck for / partition and /boot
3. grub-install on /dev/sda(which is default root filesystem)
4. check fstab

And following solve make happy to get boot server.

--> note in my case boot is mounted on /boot which is /dev/sda3 where as /dev/sda1
/ file system.

Simple solution to fix the issue(but to cross all module which are install on kernel level

  1. copy /boot of other server complete /boot excluding grub.cfg to external flash disk

  2. boot with live cd

  3. find out root file system with following command fdisk -l /dev/sda

  4. mount / file system on /mnt mount /dev/sdXY /mnt

  5. mkdir directory to mount external data mkdir -p /mnt/pd

  6. mount flash disk data to /mnt/pd

  7. now it is time to do chages on root file system with chroot command(Please care while doing chages)

  8. chroot /mnt

  9. now copy of entire /mnt/pd/boot/ to /mnt

  10. exit

  11. now unmout /mnt/pd

  12. create new folder mkdir -p /mnt/test

  13. mount /boot on /mnt/test

    mount /dev/sdXY /mnt/test

  14. now /boot is mounted on /mnt/test/

  15. again do chroot /mnt

  16. rename all file which contains /mnt/test/

  17. now copy /mnt/boot (which we have copied from pd) to /mnt/test/

  18. make sure your using original grub.cfg /mnt/test/boot/grub/grub.cfg

  19. exit

  20. reboot

  21. you will be successfully boot to the server without any issues.

-1

After much effort I finally made it:

I booted live from usb to fix the problem where i found that update-grub failed with an error "couldnt find canonical path in cow..."

I then tried alot until I found this:

https://askubuntu.com/a/772892/925082

where I followed the second way but replacing his sda5 with my sdb6 as root

t0b4cc0
  • 101
-1

I just randomly started typing stuff... try:

(initramfs) blkid
(initramfs) blockdev --rereadpt /dev/sda
(initramfs) blkid
(initramfs) exit

This at least gets you to the desktop where you can begin trouble shooting your problem which is probably due to a proprietary driver or something