Bug 672936 - Cannot boot live install from VirtIO disk
Summary: Cannot boot live install from VirtIO disk
Alias: None
Product: Fedora
Classification: Fedora
Component: livecd-tools
Version: 14
Hardware: noarch
OS: Linux
Target Milestone: ---
Assignee: Brian Lane
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2011-01-26 18:28 UTC by Paul B Schroeder
Modified: 2011-03-12 04:39 UTC (History)
6 users (show)

Fixed In Version: livecd-tools-15.5-1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2011-03-12 04:39:29 UTC
Type: ---

Attachments (Terms of Use)

Description Paul B Schroeder 2011-01-26 18:28:05 UTC
User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20110103 Fedora/3.6.13-1.fc14 Firefox/3.6.13

I created a KVM instance with a VirtIO disk and installed the "live" image to the disk.  Afterwords, I cannot boot from the VirtIO disk and get "no root device" found errors.  The problem is due to the fact that the virtio_blk and virtio_pci kernel modules are not in the initramfs.

Reproducible: Always

Steps to Reproduce:
1. Boot from LiveCD ISO in a KVM instance
2. Partition /dev/vda and install to /dev/vda1
3. Reboot
Actual Results:  
On reboot it fails with "no root device found"

I traced the problem to the dracut.conf file that is being written during the compose process of image-creator.  In particular, live.py has a limited set of modules it writes to this config.  "virtio_blk" and "virtio_pci" need to be added to the self.__modules list in live.py which comes from the imgcreate python package..

Comment 1 Brian Lane 2011-01-27 00:55:45 UTC
I just did a kvm install with a single virtio disk and it worked fine. I don't think the drivers are an issue. The "no root device found" is a kernel error I believe, meaning it couldn't find the root device specified by grub.

Note: I used the F14 x86_64 live cd and did an autopartition using all space.

Do you only have 1 virtio disk? With more than 1 it can sometimes be hard to figure out which one gets the mbr written to it.

Comment 2 Paul B Schroeder 2011-01-27 02:09:23 UTC
Ah..  I should have been more specific.  I did not use the live installer as most people would.  I basically used livecd-iso-to-disk to install.  Similar to what would be done for installing on a USB stick.  So it's not using grub, it's using extlinux (syslinux) for the bootloader.

I know this isn't the typical case, but it is how we're distributing our custom distro.  There's a long explanation as to why..  But to make a long story short, in our scenario it's much easier on the end user.

We were previously doing this with a F12 based distro and it worked just fine because image-creator wasn't creating dracut.conf.

Thanks for the quick response..

Comment 3 Brian Lane 2011-01-27 18:38:00 UTC
Could you post the exact commands you used for the install?

Comment 4 Paul B Schroeder 2011-01-27 19:56:26 UTC
Sure thing..  I guess I should have done this to begin with..

So..  Firstly, obviously, I created a new VM with all of the defaults using the local F14 Live ISO as the install media.  Login..  Start terminal..  And su to root.  Then here are the commands to reproduce:

1  parted --script /dev/vda "mklabel msdos"
2  parted --script /dev/vda "mkpart primary ext2 1 4000"
3  parted --script /dev/vda "set 1 boot on"
4  mkfs.ext3 /dev/vda1
5  yum install livecd-tools
6  livecd-iso-to-disk /dev/sr0 /dev/vda1

Reboot and see it fail..

Let me know if you need anything else..

Comment 5 Paul B Schroeder 2011-01-27 20:04:29 UTC
FYI, I initially confirmed that the drivers weren't there by adding "rdbreak" to my kernel command line, cd into /var/lib/modules/*/kernel/drivers, ls */*virt*

After adding the above modules to self.__modules list in live.py as noted above, rebuilding livecd-tools, and composing my own livecd, it boots a-okay as the drivers are there for it to be able to pick up /dev/vda.

Comment 6 Fedora Update System 2011-02-19 00:52:31 UTC
livecd-tools-15.5-1.fc15 has been submitted as an update for Fedora 15.

Comment 7 Fedora Update System 2011-02-19 02:18:09 UTC
livecd-tools-14.2-1.fc14 has been submitted as an update for Fedora 14.

Comment 8 Fedora Update System 2011-02-19 02:51:28 UTC
livecd-tools-15.5-1.fc15 has been pushed to the Fedora 15 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update livecd-tools'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/livecd-tools-15.5-1.fc15

Comment 9 Fedora Update System 2011-02-24 20:54:55 UTC
livecd-tools-14.2-1.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2011-03-12 04:38:47 UTC
livecd-tools-15.5-1.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.