15

I used Ubuntu some years back and gave up on it. I am now ready to try again. To my surprise I was welcomed with this message as soon as I did the first install. If I waited some time and typed exit the OS would boot normally. I decided to re-install Ubuntu and see if that would do the trick. That was not the case. It keeps behaving the same way.

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/11d3bcfa-0726-47cf-a705-e4acdd9169fe does not exist.   
Dropping to a shell!

BusyBox v.1.21.1 (Ubuntu 1:1.21.0-1ubuntu1) built-in shell (ash)   
Enter 'help' for list of built-in commands.  

(initramfs)

Any suggestions are appreciated!

sudo blkid; mount; cat /etc/fstab output:

/dev/sda1: LABEL="System Reserved" UUID="1C8CC0F68CC0CC08" TYPE="ntfs" 
/dev/sda2: UUID="A490C32890C30032" TYPE="ntfs" 
/dev/sda5: UUID="920c6caa-4062-45f0-a58c-585db797d554" TYPE="swap" 
/dev/sda6: UUID="11d3bcfa-0726-47cf-a705-e4acdd9169fe" TYPE="ext4" 
/dev/sda6 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
systemd on /sys/fs/cgroup/systemd type cgroup     (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=inti)
# /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/sda6 during installation
UUID=11d3bcfa-0726-47cf-a705-e4acdd9169fe /               ext4    errors=remount-ro     0       1
# swap was on /dev/sda5 during installation
UUID=920c6caa-4062-45f0-a58c-585db797d554 none            swap    sw                  0       0

Here´s the output of grep rootdelay /boot/grub/grub.cfg

    linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro rootdelay=10 quiet splash $vt_handoff
        linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro rootdelay=10 quiet splash $vt_handoff
        linux   /boot/vmlinuz-3.13.0-32-generic root=UUID=11d3bcfa-0726-47cf-    a705-e4acdd9169fe ro recovery nomodeset rootdelay=10
5
  • Ok. There are quite a few threads about it, with no definite solution. Try this: edit /etc/default/grub, and add rootdelay=10 to the GRUB_CMDLINE_LINUX variable. This will tell it to wait 10 seconds for the root device to show up. Adjust the value to fit your case.
    – muru
    Sep 11, 2014 at 21:29
  • Should I just keep incrementing the time until the error stops? Sep 11, 2014 at 21:31
  • Ok so I uploaded the outout of grep rootdelay /boot/grub/grub.cfg to the original question. I also restarted and the same message appears. How much should I increase it by? I read somewhere that 90 did it for someone. I have to wait about a minute. Sep 11, 2014 at 21:51
  • Increasing it doesn't help? (as an estimate, how long do you have to wait before typing exit?)
    – muru
    Sep 11, 2014 at 21:51
  • Ok, I changed the root delay to 90 and I didn't get the message but it took about a minute or so longer to go from the OS selection screen to the Ubuntu Login screen. May I ask what is the rootdelay and what is it doing to the system? Sep 11, 2014 at 21:58

6 Answers 6

11

Since the root filesystem is detected after some time, you can add a rootdelay or a rootwait. From the kernel documentation:

rootdelay=  [KNL] Delay (in seconds) to pause before attempting to
        mount the root filesystem
...
rootwait    [KNL] Wait (indefinitely) for root device to show up.
        Useful for devices that are detected asynchronously
        (e.g. USB and MMC devices).

To set either, edit /etc/default/grub, and change the value of GRUB_CMDLINE_LINUX. Use your preferred editor, like nano or gedit, with sudo or gksudo as needed:

sudo nano /etc/default/grub

Add rootdelay=10 inside the quotes. If you'd rather not edit manually, then run this command:

sudo sed -i.bak 's/^GRUB_CMDLINE_LINUX="/& rootdelay=10 /' /etc/default/grub

Then run:

sudo update-grub

This will tell the kernel to wait 10 seconds before proceeding to mount the root filesystem. To see if this change was applied, run

grep rootdelay /boot/grub/grub.cfg

If some output was shown, then it was applied. Now reboot.

If it still threw an error, press CtrlAltDel to reboot, wait for the GRUB OS selection menu to show up and press e. Edit the value of rootdelay, and increase it. Press F10 to boot. Repeat.

If it booted correctly, try the above process, and decrease the value.

3
  • This process worked. In my particular case I had to set the rootdelay=40. I cannot upvote yet since I am under 15 rep. Sep 11, 2014 at 22:42
  • @IntiGarcia that's ok. In fact, refrain from accepting the answer for a while, to see if someone else comes up with a proper fix. I'll clean up the comments.
    – muru
    Sep 11, 2014 at 22:45
  • All right, thank you for your advice on Ubuntu and Stack etiquette jaja. Sep 11, 2014 at 22:47
3

None of the solutions above worked for me. I booted the computer from the same USB thumbdrive I used to install Ubuntu, but my ssd wasn't listed with df -h / sudo fdisk -l / sudo blkid / lsblk / sudo parted -l. I had to do two things to fix this:

  1. Disable Fast Boot. Doing this from the BIOS was not sufficient (try rebooting and looking again - it kept going back to enabled). I had to disable it in the Windows' settings first, then in BIOS.
  2. I had to switch from RST back to AHCI. You need to Google this and find all the steps. My BIOS warned me that everything would be lost, and luckily it wasn't.

The next time I booted from my thumbdrive I could see my ssd disk (at /dev/nvme01n1). I then installed boot-repair, ran it and rebooted. Voila.

1
  • Works perfectly, after my filesystem was not detected after I installed new NVIDIA graphic card drivers
    – Pe Dro
    May 30, 2021 at 9:58
2

I came cross the same issue after repairing partition table. The message was actually straightforward. Checked the directory /dev/disk/by-uuid/, the uuid in the message did miss. Instead, there was another uuid that linked to the partion (../../sda5 for mine) what was expected the right partition.

Eventually I solved the problem simply: edit /boot/grub/grub.cfg, replace the wrong uuid with the right one.

0

I had Windows 7 64 bit installed on my laptop. Then installed ubuntu 14.04 from a thumb drive, so that I could dual boot windows and ubuntu. I then got the "gave up waiting for root device" error error.

To fix it I tried many things suggested in forums: reinstalling ubuntu, reinstalling and updating grub, boot-repair, update-initramfs, and nothing worked. The only thing that fixed it was installing from a CD. The CD installation worked perfectly and no errors.

0

I had the same issue, link to my question

The issue is with creation of initramfs, after doing a

make oldconfig

and choosing default for new options, make sure the ENOUGH diskspace is available for the image to be created. in my case the image created was not correct and hence it was failing to mount the image at boot time.


when compared; the image size was quite less than the existing image of lower version, so I added another disk with more than sufficient size and then

make bzImage

make modules

make modules_install

make install

starts working like a charm. I wonder why the image creation got completed earlier and resulted in corrupt image (with less size) without throwing any error [every single time]

0

I had exactly the same problem after installing Xubuntu 14.04 32bit. Just try this:

  1. after the boot ends with the UUID message and (initramfs) just type exit or exec startx and it will get you into GUI
  2. edit as root /etc/default/grub
  3. find #GRUB_DISABLE_LINUX_UUID=true , delete # and save it
  4. in terminal run: sudo update-grub and sudo reboot

And after this it should work.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .