错误信息:
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/engine.py", line 501, in run_domain
vm.startup()
File "/usr/share/virt-manager/virtManager/domain.py", line 569, in startup
self.vm.create()
File "/usr/lib64/python2.4/site-packages/libvirt.py", line 287, in create
if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirtError: POST操作失败: xend_post:来自 xen 守护进程的错误:(xend.err "Error creating domain: (2, 'Invalid kernel', 'xc_dom_parse_elf_kernel: ELF image has no shstrtab//n')")
xend.log信息如下:
[2011-03-29 11:30:13 xend.XendDomainInfo 27457] DEBUG (XendDomainInfo:2189) XendDomainInfo.destroy: domid=10
[2011-03-29 11:30:13 xend.XendDomainInfo 27457] DEBUG (XendDomainInfo:2114) UUID Created: False
[2011-03-29 11:30:13 xend.XendDomainInfo 27457] DEBUG (XendDomainInfo:2115) Devices to release: [], domid = 10
[2011-03-29 11:30:13 xend.XendDomainInfo 27457] DEBUG (XendDomainInfo:2119) Releasing PVFB front-end devices (uuid not created)...
[2011-03-29 11:30:13 xend.XendDomainInfo 27457] DEBUG (XendDomainInfo:2127) Releasing PVFB backend devices ...
[2011-03-29 11:30:13 xend 27457] ERROR (SrvBase:88) Request create failed.
Traceback (most recent call last):
File "/usr/lib64/python2.4/site-packages/xen/web/SrvBase.py", line 85, in perform
return op_method(op, req)
File "/usr/lib64/python2.4/site-packages/xen/xend/server/SrvDomainDir.py", line 82, in op_create
raise XendError("Error creating domain: " + str(ex))
XendError: Error creating domain: (2, 'Invalid kernel', 'xc_dom_parse_elf_kernel: ELF image has no shstrtab/n')
我尝试重新启动本地的xend服务依然无法启动该虚拟机系统。
于是我手工进行虚拟机的创建和安装:
第一步:设置一块虚拟系统硬盘vmdisk,大小为5G
dd if=/dev/zero of=/vmdisk bs=1M count=5000
第二步:格式化该虚拟硬盘
mkfs.ext3 /vmdisk
第三步:为该虚拟机创建脚本配置实例/etc/xen/xmexample1
# Kernel image file.
kernel = "/boot/vmlinuzdomainU"
ramdisk = "/boot/initrddomainU.img"
memory = 512
# A name for your domain. All domains must have different names.
name = "disk"
# Number of Virtual CPUS to use, default is 1
vcpus = 2
vif = [ 'bridge=xenbr0' ]
disk = [ 'file:/vmdisk,hda,w' ]
# Set root device.
root ="hda ro"
# Sets runlevel 4.
extra = "4"
第四步:
创建上述实例
xm create /etc/xen/xmexample1 -c
出错了:
[root@NN xiaonan]# xm create xmexample1 -c
Using config file "/etc/xen/xmexample1".
Error: (2, 'Invalid kernel', 'xc_dom_parse_elf_kernel: ELF image has no shstrtab/n')
这个错误和上面使用virt-manager 图形界面时一样,只是没有经过安装就出错了,看来还是内核有问题。
问题初步认定:装到虚拟机中的xen内核缺少一个字段列表shstrtab,当我换成其它系统的xen内核就可以。同样是该系统在戴尔380机器上就不会出现此问题,380机器配置比360高,而且支持全虚拟化。详细原因未曾查到!