Warning /dev/root does not exist

Whilst writing a post on setting up a Trivial FTP server and the PXE boot functionality within ISC dhcpd, I stumbled across a bit of an issue which prevented me from successfully deploying either CentOS 7 or RHEL 7 to my KVM virtual machine.

I got the following error;


the key lines here being;

[  OK  ] Reached target Basic System.

which just sat there for a long time before I saw this output;

dracut-initqueue[536]: Warning: Could not boot.
dracut-initqueue[536]: Warning: /dev/root does not exist

I tried a number of different things to work through this issue, including;

  • Switching from CentOS 7 to RHEL 7 (in the hope that a supported product might fare better
  • Changing dhcpd configuration to try different ways of defining the PXE service
  • Experimenting with different parameters in the pxelinux.cfg/default file.
  • “Googling” it to death!

Now what I found after googling is that there are some additional parameters that (it would appear) MUST be set!!  Things have changed a lot since the days of RHEL 6/CentOS 6.

For me I had to add the following “inst.repo=http://rhc-server.lab.tobyheywood.com/centos7” to the APPEND line for the kernel I intended to boot from.  This essentially defines where the installation files are in the absence of a kickstart aka anaconda file!  This is the important bit!  Because I was intend on proving the manual installation would work without have to have the physical media in my hand, I had skipped the kickstart file.

When you think about it this makes perfect sense, as otherwise how would it know where the installation files are???  Exactly!

So my pxelinux.cfg/default file now looks like this;

[toby@rhc-server rhel7]$ sudo cat /tftpboot/pxelinux.cfg/default 
DEFAULT menu.c32
ONTIMEOUT localdisk

LABEL localdisk
    MENU LABEL ^Local Hard Drive

LABEL Install_CentOS_7_2_pxeboot
    MENU LABEL CentOS 7.2
    KERNEL centos7/vmlinuz
    APPEND initrd=http://rhc-server.lab.tobyheywood.com/centos7/images/pxeboot/initrd.img inst.repo=http://rhc-server.lab.tobyheywood.com/centos7

For those that want some additional bedtime reading, I would highly recommend the following the Anaconda documentation that relates to boot options – https://rhinstaller.github.io/anaconda/boot-options.html

One thought on “Warning /dev/root does not exist

  1. I had a very difficult time with this as well. In my case, I had a PXE/kickstart environment that was working perfectly fine. I got new servers with 10Gbe Intel X540 interfaces. When I would try to kickstart them, they would all fail with the error you describe above. After hours of pulling my hair out, I discovered that for some reason the initrd was not assigning an IP address from DHCP (even though PXE and TFTP worked). In desperation, I plugged into 1Gbe switch and everything worked perfectly. After installing the servers, I plugged back into a 10Gbe switch and they work fine at 10Gbe. So, it seems to me there are some issues with 10Gbe and kickstart. Hope this helps someone.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.