Haifeng He
2007-Oct-11 17:43 UTC
[Fedora-xen] VFS: Cannot open root device "sda1" or unknown-block(0, 0)
Hi, All I followed the steps in Fedora7VirtQuickStart to install Xen on Fedora 7. I downloaded couples of file system image from http://jailtime.org/. However, every time I tried to create guest OS using those file system image, I got error messages: VFS: Cannot open root device "sda1" or unknown-block(0,0) Please append a correct "root=" boot option Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) An example of Xen configure is: kernel = "/boot/vmlinuz-2.6.20-2936.fc7xen" memory = 256 name = "fedora.fc6" vif = [ '''' ] dhcp = "dhcp" disk = [''file:/xen/fedora/fedora.fc6.img,sda1,w'', ''file:/xen/fedora/fedora.swap, sda2,w''] root = "/dev/sda1 ro" Having been googling on this topic for a while, but still not getting the right answer for it. Any help will be appreciated. Thanks Haifeng
Eduardo Habkost
2007-Oct-11 20:48 UTC
Re: [Fedora-xen] VFS: Cannot open root device "sda1" or unknown-block(0, 0)
On Thu, Oct 11, 2007 at 10:43:22AM -0700, Haifeng He wrote:> Hi, All > > I followed the steps in Fedora7VirtQuickStart to install Xen on Fedora 7. > I downloaded couples of file system image from http://jailtime.org/. However, > every time I tried to create guest OS using those file system image, I got error > messages: > > VFS: Cannot open root device "sda1" or unknown-block(0,0) > Please append a correct "root=" boot option > Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) > > An example of Xen configure is: > > kernel = "/boot/vmlinuz-2.6.20-2936.fc7xen"You don''t have a initrd image that contains the block device and filesystem modules. I expect the images you have downloaded have a valid grub configuration inside it. If they have it, you can use: bootloader = "/usr/bin/pygrub" Instead of specifying a kernel that is outside the disk image. Pygrub will be able to read grub configuration and kernel/initrd images from inside the disk image. -- Eduardo
Haifeng He
2007-Oct-12 17:06 UTC
Re: [Fedora-xen] VFS: Cannot open root device "sda1" or unknown-block(0, 0)
On 10/11/07, Eduardo Habkost <ehabkost@redhat.com> wrote:> On Thu, Oct 11, 2007 at 10:43:22AM -0700, Haifeng He wrote: > > Hi, All > > > > I followed the steps in Fedora7VirtQuickStart to install Xen on Fedora 7. > > I downloaded couples of file system image from http://jailtime.org/. However, > > every time I tried to create guest OS using those file system image, I got error > > messages: > > > > VFS: Cannot open root device "sda1" or unknown-block(0,0) > > Please append a correct "root=" boot option > > Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) > > > > An example of Xen configure is: > > > > kernel = "/boot/vmlinuz-2.6.20-2936.fc7xen" > > You don''t have a initrd image that contains the block device and > filesystem modules. > > I expect the images you have downloaded have a valid grub configuration > inside it. If they have it, you can use: > > bootloader = "/usr/bin/pygrub" > > Instead of specifying a kernel that is outside the disk image. Pygrub > will be able to read grub configuration and kernel/initrd images from > inside the disk image. >Thank you for your reply. I tried to include bootloader = "/usr/bin/pygrub" in my configuration but I got an error message "Error: Boot loader didn''t return any data!". I was able to boot the same image on a Ubuntu system with Xen installed from source. Do I need to do something special on Fedora-Xen? Or there is a way that I can add block device and filesystem modules into the initrd image? Thanks Haifeng> -- > Eduardo >
Eduardo Pereira Habkost
2007-Oct-15 16:17 UTC
Re: [Fedora-xen] VFS: Cannot open root device "sda1" or unknown-block(0, 0)
On Fri, Oct 12, 2007 at 10:06:43AM -0700, Haifeng He wrote: <snip>> > > > I expect the images you have downloaded have a valid grub configuration > > inside it. If they have it, you can use: > > > > bootloader = "/usr/bin/pygrub" > > > > Instead of specifying a kernel that is outside the disk image. Pygrub > > will be able to read grub configuration and kernel/initrd images from > > inside the disk image. > > > > Thank you for your reply. I tried to include bootloader = "/usr/bin/pygrub" > in my configuration but I got an error message "Error: Boot loader > didn''t return any data!". > I was able to boot the same image on a Ubuntu system with Xen > installed from source. > Do I need to do something special on Fedora-Xen? Or there is a way that I > can add block device and filesystem modules into the initrd image?I took a look at the config file shipped with Fedora images on the site you mentioned. It looks like it expects you to have a pre-compiled domU kernel that contains all needed modules, on you host /boot directory. I don''t know which kernel image the author of those images expects you to use. Some things you can try: - Checking the instructions on the README.txt inside the image, as noted on <http://jailtime.org/download:fedora:fc6>. Maybe there are some clues there; or - Try to generate a initrd that will contain all needed modules. You can play with the --omit-* and --with options of mkinitrd to get a initrd with the right modules; or - Try using the Xen kernel and initrd from the FC-6 repository: http://download.fedora.redhat.com/pub/fedora/linux/core/6/i386/os/images/xen/ or - Get a domU kernel with all needed modules compiled as builtin (so you don''t need a initrd) from somewhere, or compile a domU kernel this way; or - Put a valid grub configuration (and a kernel-xen package) inside the image, to get pygrub to work; or - Use virt-manager and install your own FC-6 system instead of using the downloaded image. -- Eduardo