I am trying to run my old CentOS4.8 (32-bit) system as a guest system
under CentOS5.4xen (64-bit). I followed the instructions in Appendix A
of the xen user manual (/usr/share/doc/xen-3.0.3/pdf/user.pdf) and
created a 'disk image' (actually a 10gig LVM logical volume:
sauron.deepsoft.com% sudo fdisk -l /dev/mapper/sauron-c4guest
Disk /dev/mapper/sauron-c4guest: 10.7 GB, 10737418240 bytes
16 heads, 32 sectors/track, 40960 cylinders
Units = cylinders of 512 * 512 = 262144 bytes
Device Boot Start End Blocks Id
System
/dev/mapper/sauron-c4guest1 * 1 40960 10485744 83
Linux
sauron.deepsoft.com% sudo lomount -t ext3 -diskimage
/dev/mapper/sauron-c4guest -partition 1 /mnt/guest
sauron.deepsoft.com% ls -ltr /mnt/guest/boot
total 17432
-rw-r--r-- 1 root root 51614 Jan 21 20:35 config-2.6.9-89.0.11.EL
-rw-r--r-- 1 root root 1425764 Jan 21 20:35 initrd-2.6.9-89.0.16.EL.img
-rw-r--r-- 1 root root 832064 Jan 21 20:35 initrd-2.6.9-89.0.15.EL.img
-rw-r--r-- 1 root root 832055 Jan 21 20:35 initrd-2.6.9-89.0.11.EL.img
-rw-r--r-- 1 root root 766328 Jan 21 20:35 initrd-2.6.9-78.0.22.EL.img-orig
-rw-r--r-- 1 root root 51613 Jan 21 20:35 config-2.6.9-89.0.9.EL
-rw-r--r-- 1 root root 55212 Jan 21 20:35 config-2.6.9-89.0.18.EL.plus.c4
-rw-r--r-- 1 root root 51614 Jan 21 20:35 config-2.6.9-89.0.16.EL
-rw-r--r-- 1 root root 51614 Jan 21 20:35 config-2.6.9-89.0.15.EL
-rw-r--r-- 1 root root 768504 Jan 21 20:35 System.map-2.6.9-89.0.9.EL
-rw-r--r-- 1 root root 787043 Jan 21 20:35 System.map-2.6.9-89.0.18.EL.plus.c4
-rw-r--r-- 1 root root 768660 Jan 21 20:35 System.map-2.6.9-89.0.16.EL
-rw-r--r-- 1 root root 768660 Jan 21 20:35 System.map-2.6.9-89.0.15.EL
-rw-r--r-- 1 root root 768606 Jan 21 20:35 System.map-2.6.9-89.0.11.EL
-rw-r--r-- 1 root root 67596 Jan 21 20:35 symvers-2.6.9-89.0.9.EL.gz
-rw-r--r-- 1 root root 78176 Jan 21 20:35 symvers-2.6.9-89.0.18.EL.plus.c4.gz
-rw-r--r-- 1 root root 67596 Jan 21 20:35 symvers-2.6.9-89.0.16.EL.gz
-rw-r--r-- 1 root root 67596 Jan 21 20:35 symvers-2.6.9-89.0.15.EL.gz
-rw-r--r-- 1 root root 67596 Jan 21 20:35 symvers-2.6.9-89.0.11.EL.gz
-rw-r--r-- 1 root root 832001 Jan 21 20:35 initrd-2.6.9-89.0.9.EL.img
-rw-r--r-- 1 root root 1533159 Jan 21 20:35 vmlinuz-2.6.9-89.0.9.EL
-rw-r--r-- 1 root root 1579298 Jan 21 20:35 vmlinuz-2.6.9-89.0.18.EL.plus.c4
-rw-r--r-- 1 root root 1536244 Jan 21 20:35 vmlinuz-2.6.9-89.0.16.EL
-rw-r--r-- 1 root root 1536207 Jan 21 20:35 vmlinuz-2.6.9-89.0.15.EL
-rw-r--r-- 1 root root 1533468 Jan 21 20:35 vmlinuz-2.6.9-89.0.11.EL
drwxr-xr-x 2 root root 4096 Jan 21 20:36 grub
-rw-r--r-- 1 root root 796960 Jan 22 15:35 initrd-2.6.9-89.0.18.EL.plus.c4.img
sauron.deepsoft.com% cat /mnt/guest/boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sauron/c5root
# initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=5
#splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS4 (2.6.9-89.0.18.EL.plus.c4)
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-89.0.18.EL.plus.c4 ro root=/dev/hda1 single
initrd /boot/initrd-2.6.9-89.0.18.EL.plus.c4.img
pygrub seems to be happy:
sudo /usr/bin/pygrub /dev/mapper/sauron-c4guest
[Reasonable imitation of a Grub boot screen]
linux (kernel /var/lib/xen/boot_kernel.8bcf-G)(ramdisk /var/lib/xen/boot_ramdisk
But when I try to start the guest, I get:
error: POST operation failed: xend_post: error from xen daemon:
(xend.err "Error creating domain: (2, 'Invalid kernel',
'xc_dom_find_loader: no loader found\\n')")
I googled this error message and the only hits I got were about FC11 or
FC12 and some issue relating to how the kernel image was compressed,
which probably does not relate to an *older* CentOS 4 kernel.
The config file for this guest is:
sauron.deepsoft.com% sudo cat /etc/xen/c4guest
name = "c4guest"
uuid = "06bfb4e1-c427-c93c-2365-b80b832bb6d4"
maxmem = 512
memory = 512
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
disk = [ "phy:/dev/mapper/sauron-c4guest,xvda,w" ]
vif = [ "mac=00:16:36:0a:d9:ac,bridge=virbr0,script=vif-bridge" ]
What am I missing?
It also appears I am limited to paravirtualization (does this matter?),
because my processor does not seem to support hardware virtualization
support:
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 127
model name : AMD Sempron(tm) Processor LE-1300
stepping : 2
cpu MHz : 1000.000
cache size : 512 KB
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow up pni cx16 lahf_lm extapic cr8_legacy misalignsse
bogomips : 2000.01
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc 100mhzsteps
--
Robert Heller -- 978-544-6933
Deepwoods Software -- Download the Model Railroad System
http://www.deepsoft.com/ -- Binaries for Linux and MS-Windows
heller at deepsoft.com -- http://www.deepsoft.com/ModelRailroadSystem/