<div dir="ltr">Hi there,<div><br></div><div style>Could someone please shed some light ? I'm stuck with this for more than a week now.</div><div style>Suggestions on how I go about debugging is good enough.</div><div style>
<br></div><div style>Have OpenNebula 3.8.3 installed using the official .deb, on a Ubuntu 12.04.2 LTS as Xen Dom0.</div><div style>Trying to boot into several DomUs created with xen-tools 'xen-create-image', on the same machine.</div>
<div style>DomUs are Ubuntu Lucid and Centos-5.</div><div style>I can boot into these DomUs using 'xm create' through Pygrub or kernel, and they run perfectly fine.</div><div style>But when I do 'onevm create' or 'onetemplate instantiate', they either won't boot (for pygrub cases) or stop at the initramfs shell (for kernel boot cases).</div>
<div style><br></div><div style>For the kernel boot case, 'onevm list' show the DomU running, but when I do 'xm console' into it it says:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<div style><div style>[    0.725043] registered taskstats version 1</div></div><div style><div style><b>[    0.725051] XENBUS: Device with no driver: device/vbd/51714</b></div></div><div style><div style><b>[    0.725053] XENBUS: Device with no driver: device/vbd/51713</b></div>
</div><div style><div style><b>[    0.725056] XENBUS: Device with no driver: device/vif/0</b></div></div><div style><div style><b>[    0.725058] XENBUS: Device with no driver: device/console/0</b></div></div><div style><div style>
[    0.725068]   Magic number: 1:252:3141</div></div><div style><div style>[    0.725076] /build/buildd/linux-2.6.32/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)</div></div><div style><div style>[    0.725081] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found</div>
</div><div style><div style>[    0.725083] EDD information not available.</div></div><div style><div style>[    0.731969] Freeing initrd memory: 22736k freed</div></div><div style><div style>[    0.735010] Freeing unused kernel memory: 808k freed</div>
</div><div style><div style>[    0.735151] Write protecting the kernel read-only data: 7840k</div></div><div style><div style>Loading, please wait...</div></div><div style><div style>Begin: Loading essential drivers... ...</div>
</div><div style><div style>Done.</div></div><div style><div style>[    0.757035] udev: starting version 151</div></div><div style><div style>Begin: Running /scripts/init-premount ...</div></div><div style><div style>Done.</div>
</div><div style><div style>Begin: Mounting root file system... ...</div></div><div style><div style>Begin: Running /scripts/local-top ...</div></div><div style><div style>Done.</div></div><div style><div style>[    0.839045] blkfront: xvda2: barriers enabled</div>
</div><div style><div style>[    0.849632] blkfront: xvda1: barriers enabled</div></div><div style><div style><b>Begin: Running /scripts/local-premount ...</b></div></div><div style><div style><b>Done.</b></div></div><div style>
<div style><b>[   30.834922] end_request: I/O error, dev xvda2, sector 2</b></div></div><div style><div style><b>[   30.834955] EXT3-fs: unable to read superblock</b></div></div><div style><div style><b>[   30.841804] end_request: I/O error, dev xvda2, sector 2</b></div>
</div><div style><div style><b>[   30.841832] EXT2-fs: unable to read superblock</b></div></div><div style><div style><b>[   30.849824] end_request: I/O error, dev xvda2, sector 2</b></div></div><div style><div style><b>[   30.849855] EXT4-fs (xvda2): unable to read superblock</b></div>
</div><div style><div style><b>mount: mounting /dev/xvda2 on /root failed: Invalid argument</b></div></div><div style><div style>Begin: Running /scripts/local-bottom ...</div></div><div style><div style>Done.</div></div><div style>
<div style>Done.</div></div><div style><div style>Begin: Running /scripts/init-bottom ...</div></div><div style><div style>mount: mounting /dev on /root/dev failed: No such file or directory</div></div><div style><div style>
Done.</div></div><div style><div style>mount: mounting /sys on /root/sys failed: No such file or directory</div></div><div style><div style>mount: mounting /proc on /root/proc failed: No such file or directory</div></div>
<div style><div style>Target filesystem doesn't have /sbin/init.</div></div><div style><div style>No init found. Try passing init= bootarg.</div><div style><div>BusyBox v1.13.3 (Ubuntu 1:1.13.3-1ubuntu11) built-in shell (ash)</div>
<div>Enter 'help' for a list of built-in commands.</div><div><br></div><div>(initramfs)</div></div></div></blockquote><div style><div style><br></div><div style>I read from somewhere that the XENBUS lines could be fine, </div>
<div style>so what's the problem about <b>unable to read superblock</b>?</div><div style><br></div><div style>Here is the onetemplate, kernels were copied from inside the DomU to the /boot in Dom0,:</div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<div style><div style><div style>NAME   = vm02</div></div></div><div style><div style><div style>CPU    = 1</div></div></div><div style><div style><div style>MEMORY = 512</div></div></div><div style><div style><div style>
<br></div></div></div><div style><div style><div style>#OS = [ bootloader = /usr/lib/xen-default/bin/pygrub,</div></div></div><div style><div style><div style>OS = [ kernel = /boot/vmlinuz-2.6.32-46-server,</div></div></div>
<div style><div style><div style>       initrd = /boot/initrd.img-2.6.32-46-server,</div></div></div><div style><div style><div style>       root = "xvda2",</div></div></div><div style><div style><div style>       KERNEL_CMD = "ro" ]</div>
</div></div><div style><div style><div style><br></div></div></div><div style><div style><div style>DISK = [ IMAGE_ID = 3 ]</div></div></div><div style><div style><div style><br></div></div></div><div style><div style><div style>
DISK = [ type = swap,</div></div></div><div style><div style><div style>         size = 512,</div></div></div><div style><div style><div style>         target = "xvda1",</div></div></div><div style><div style><div style>
         readonly = "no" ]</div></div></div><div style><div style><div style><br></div></div></div><div style><div style><div style>NIC = [ IP="147.8.183.150", MAC="08:00:27:C8:EB:ED", bridge=xenbr0 ]</div>
</div></div><div style><div style><div style>RAW = [ type="xen", data="on_crash='restart'" ]</div></div></div></blockquote><div style><div style><div style><br></div><div style>And the disk image was imported with:</div>
</div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div style><div style><div style><div style>NAME    = "vm02_img"</div></div></div></div><div style><div style><div style><div style>
PATH    = /home/xen/domains/vm02/disk.img</div></div></div></div><div style><div style><div style><div style>TYPE    = OS</div></div></div></div><div style><div style><div style><div style>DEV_PREFIX = "xdv"</div>
</div></div></div><div style><div style><div style><div style>TARGET  = "xvda2"</div></div></div></div><div style><div style><div style><div style>DRIVER  = file:</div></div></div></div></blockquote><div style><br>
</div><div style>I compared the xend.log messages for successful boot by 'xm create' with failed boot by 'onevm create', doesn't seem to have much difference...</div><div style><br></div><div style>For the Pygrub boot case, there seem to be no way to pass '<b>root=/dev/xvda2 ro</b>' to Pygrub from OpenNebula? </div>
<div style>In xend.log it says:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div style>[2013-05-03 01:10:38 20461] DEBUG (XendBootloader:113) Launching bootloader as ['/usr/lib/xen-default/bin/pygrub', '--output=/var/run/xend/boot/xenbl.15718', '-q', '/var/lib/one//datastores/0/17/disk.0'].</div>
</blockquote><div style><br></div><div style>And eventually it returns:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div style><div style>[2013-05-03 01:10:38 15927] ERROR (XendBootloader:214) Boot loader didn't return any data!</div>
</div><div style><div style>[2013-05-03 01:10:38 15927] ERROR (XendDomainInfo:488) VM start failed</div></div><div style><div style>Traceback (most recent call last):</div></div><div style><div style>  File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 474, in start</div>
</div><div style><div style>    XendTask.log_progress(31, 60, self._initDomain)</div></div><div style><div style>  File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendTask.py", line 209, in log_progress</div></div>
<div style><div style>    retval = func(*args, **kwds)</div></div><div style><div style>  File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 2838, in _initDomain</div></div><div style><div style>
    self._configureBootloader()</div></div><div style><div style>  File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendDomainInfo.py", line 3285, in _configureBootloader</div></div><div style><div style>    bootloader_args, kernel, ramdisk, args)</div>
</div><div style><div style>  File "/usr/lib/xen-4.1/bin/../lib/python/xen/xend/XendBootloader.py", line 215, in bootloader</div></div><div style><div style>    raise VmError, msg</div></div><div style><div style>
VmError: Boot loader didn't return any data!</div></div></blockquote><div style><div><br></div></div><div style>Where in a successful boot with 'xm create' it is:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<div style>[2013-05-03 01:13:01 20522] DEBUG (XendBootloader:113) Launching bootloader as ['/usr/lib/xen-default/bin/pygrub', <b>'--args=root=/dev/xvda2 ro '</b>, '--output=/var/run/xend/boot/xenbl.9704', '-q', '/home/xen/domains/vm02/disk.img'].</div>
</blockquote><div style><br></div><div style>Any suggestions on how I can debug these?</div><div style>Sorry for writing such a long post...</div><div style><br></div><div style>Best regards,</div><div style>Sam Ho</div><div style>
<br></div><div style><br></div><div style><br></div></div>