Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

So I am attempting to move a physical Native CentOS 4.6 Installation to a DomU instance on a CentOS 5.5 Server. I have followed the available to tutorial @ CentOs - WIki but have encountered the following issue upon running xm create. enter image description here

Traceback (most recent call last):
  File "/usr/bin/pygrub", line 691, in ?
    data = fs.open_file(chosencfg["ramdisk"],).read()
IOError: [Errno 2] No such file or directory
No handlers could be found for logger "xend"
Error: Boot loader didn't return any data!

The funny thing is pygrub loads fine, but it seems to run into a snag loading the ram which I though might be a problem when mapping the physical HD to the vm instance so I looked at fdisk -l (see below). And mapped the swap in the domU configuration to sda2 and proceeded to modify the fstab on the domU (sdb2) to the swap mapped to sda2, but it won't work. If anyone can lend me a hand, I have some mor info below:

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1          16      128488+  83  Linux
/dev/sdb2              17        1928    15358140   83  Linux
/dev/sdb3            1929        5752    30716280   83  Linux
/dev/sdb4            5753       19435   109908697+   5  Extended
/dev/sdb5            5753        6013     2096451   82  Linux swap / Solaris
/dev/sdb6            6014       19435   107812183+  83  Linux

/etc/xen/uno - The Xen Configuration File

name            = 'uno'
bootloader      = '/usr/bin/pygrub'
maxmemory       = 1256
memory          = 512
vcpus           = 1
cpus            = '1-2'
vif             = [ '' ]
disk            = [     'phy:sdb2,sda1,w',
                        'phy:sdb3,sda4,w'       ]


# obsolete      /boot   ext3    defaults        1 1
/dev/sda1       /       ext3    defaults        1 1
/dev/sda2       swap    swap    defaults        0 0
/dev/sda3       /u      ext3    defaults        1 2
/dev/sda4       /backup ext3    defaults        1 2

Any one have any clue .?

share|improve this question

I think it wants to load a ramdisk. In my xen confs, I have a line like so:

ramdisk = "/boot/initrd-xen-2.6.18-128.4.1.el5xen"

Now, in my confs, this is because the kernel and the ramdisk resides outside the VM file system. I would have thought that this was config pygrub should read from the VM grub conf/file system, but you could try simply copying the ramdisk outside and pointing to it with the ramdisk option.

share|improve this answer
Thanks: I'll look into this and report back – DaveCol Mar 13 '11 at 23:39
Allright I tried it, but still it won't work. – DaveCol Mar 15 '11 at 12:12

@Bittrance: I was under the impression no ramdisk line was required when using pygrub.

Here is a thread which discusses a similar problem. It looks like pygrub doesn't always find the MBR.

Also, I wonder if matters if you use 'phy:sdb2,sda1,w' instead of 'phy:/dev/sdb2,sda1,w' ?

share|improve this answer
Thank you for the link BigChief. I did try to use your suggestion to no avail again I will keep looking into it. – DaveCol Mar 14 '11 at 13:11

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.