[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-users] How to solve "Error: Boot loader didn't return any data"
Hello Philipp , > Hello Bryant,
> > On Thursday 01 December 2011 09:42:14 Bryant Kobe wrote: >> I am a newcomer to xen , which i study in recent months . I have deploy the >> xen-4.1.2 on dell server , centos as dom0 , now , i use the vhd format to >> be the virtual hard disk , after i execute >> " xm new ***.cfg" , >> this vm generate the vm in "xm list" , > > This just creates a persistent domain in Xend from your configuration file. > >> but when i execute >> " xm start *** ", > > This is what then starts the domain as currently configured in Xend. > >> "Error: Boot loader didn't return any data " happened , >> i refer the official document , saying that "*make sure that the >> partition/lvm/container that contains the kernel and initrd comes first " , >> *but i have provide the vhd containing guest OS . > > You didn't tell what guest OS you try to boot. PyGrub as the name should tell > you is an implementation of Grub in Python, used to extract the (Linux) > kernel and it's ram-disk from the disk to then run it as a PV domain. > If your guest is not an PV capable OS, you need to define a HV domain. > You should have a look at /var/log/xen/xend.log and xend-debug.log (or where > ever they are located in CentOS.) my guest OS is also centos5.6 , the error message in /var/log/xen/xend.log is :
"""
[2011-12-02 11:26:40 17507] DEBUG (XendBootloader:123) Launching bootloader as ['/usr/bin/pygrub', '--output=/var/run/xend/boot/xenbl.14220', '-q', '/dev/xvdp']. [2011-12-02 11:26:41 4270] ERROR (XendBootloader:224) Boot loader didn't return any data!
[2011-12-02 11:26:41 4270] INFO (XendDomainInfo:3288) Unmounting /dev/xvdp from /dev/xvdp. [2011-12-02 11:26:41 4270] DEBUG (XendDomainInfo:1276) XendDomainInfo.destroyDevice: deviceClass = tap2, device = /dev/xvdp
[2011-12-02 11:26:41 4270] DEBUG (DevController:649) deviceDestroyCallback /local/domain/0/backend/vbd/0/51952/hotplug-status. [2011-12-02 11:26:41 4270] DEBUG (DevController:658) deviceDestroyCallback 6.
[2011-12-02 11:26:41 4270] ERROR (XendDomainInfo:488) VM start failed Traceback (most recent call last): File "usr/lib64/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 474, in start
XendTask.log_progress(31, 60, self._initDomain) File "usr/lib64/python2.4/site-packages/xen/xend/XendTask.py", line 209, in log_progress retval = func(*args, **kwds)
File "usr/lib64/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 2838, in _initDomain self._configureBootloader() File "usr/lib64/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 3285, in _configureBootloader
bootloader_args, kernel, ramdisk, args) File "/usr/lib64/python2.4/site-packages/xen/xend/XendBootloader.py", line 225, in bootloader raise VmError, msg VmError: Boot loader didn't return any data!
[2011-12-02 11:26:41 4270] DEBUG (XendDomainInfo:3071) XendDomainInfo.destroy: domid=27 [2011-12-02 11:26:41 4270] DEBUG (XendDomainInfo:2406) No device model [2011-12-02 11:26:41 4270] DEBUG (XendDomainInfo:2408) Releasing devices
""" >> This situation doesn't occur every time i execute the above instruction ,
>> but once happened , i would not start any vm later , unless reboot server. >> I have search many references , try some methods for several weeks , but >> all don't work ! > > To rule out any Xen internal problems, you can try something like this: > 1. create a blktap device by hand > # tap-ctl create -avhd:/path/to/your/image.vhd > This should then print something like "/dev/xen/blktap-2/tapdev6" > 2. Check that the tapdisk works: > # file -s "/dev/xen/blktap-2/tapdev6" > This should print something like this: > /dev/xen/blktap-2/tapdev6: x86 boot sector; partition 1: ID=0x83, active, > starthead 1, startsector 63, 626472 sectors; partition 2: ID=0x83, starthead > 0, startsector 626535, 2040255 sectors; partition 3: ID=0x8e, starthead 0, > startsector 2666790, 39262860 sectors, code offset 0x63 > 3. Run pygrub on that device: > # pygrub "/dev/xen/blktap-2/tapdev6" > This should display the PyGrub menu. After selecting a kernel, PyGrub should > print somethin like this: > linux (kernel /var/run/xend/boot/boot_kernel.g9ssQ9) > (ramdisk /var/run/xend/boot/boot_ramdisk.jAfNI9) > (args "root=/dev/mapper/vg_ucs-rootfs ro splash quiet loglevel=0 vga=788 ") > 4. Destroy the blktap device to clean up step 1. > # tap-ctl list | grep -F "/path/to/your/image.vhd" > # tap-ctl destroy -p $pid -m $minor > where $pid and $minor should be taken from the command above. I have done follow your above four instructions , get the similar results ,
after executing 1,2,3 , I try to "xm start ***.vhd" , but still get "VmError: Boot loader didn't return any data!"
however , this method is workable in xen4.0.3+centos5.6(dom0) .
(maybe this is not a good method to start a vm(centos5.6) which seem to that the vhd file of vm has been mounted , but vm still cannot be started ,
so now rule out the possibility that the vhd file of the vm cannot be mounted .
after failed some times , I check xenstore , find the following strange info :
[root@xen212 centos]# xm list Name ID Mem VCPUs State Time(s) Domain-0 0 1024 8 r----- 1537.4
[root@xen212 centos]# xenstore-list /vm 00000000-0000-0000-0000-000000000000 00000000-0000-0000-0000-000000000000-1 5e4843f3-9ed7-462a-9b41-f07577406b0d 00000000-0000-0000-0000-000000000000-2
00000000-0000-0000-0000-000000000000-3 00000000-0000-0000-0000-000000000000-4 00000000-0000-0000-0000-000000000000-5
As far as I know , xenstore only preserves information of running vms . There is only dom0 running , but xenstore contain other vms' information ,I don't know what problems had happened .
what do the strange uuids means ? Do these strange info related to previous error "VmError: Boot loader didn't return any data!" ?
I have read the source code of start in xend written in python , which seems to have little help to solve the problem , should I need to read the underlying C code to realize more info?
> > Sincerely > Philipp > PS: If by chance any of your files contains blanks or equal-signs, please let > me know, since I spotted a Bug in handling them. I am sure my files don't contain blanks or equal-signs .
thanks a lot !
Sincerely
Bryant
_______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |