This may or may not address your problem but it worked for Ubuntu systems with a similar requirement, build once and distribute.
Apply the attached patch (not mine) to xen 4.0.1.rc3.pre and then build using:
export KERNELS="" ; export PYTHON_PREFIX_ARG="" ; make dist
This generates a dist dir that puts everything in the right place for Ubuntu systems. I know the sysconfig/default changes apply to debian as well, the ones I'm not sure about are the python lib location move.
This patch works for 4.0.0 and 4.0.1.rc3.pre, but not 4.1.
On Mon, Jun 21, 2010 at 9:05 AM, Debasish Bose <dbose@xxxxxxxxx>
I've successfully ran dom0/domU (both Debian) in my local laptop using 126.96.36.199 dom0 with xen-4.0.1-rc3-pre. Great. Now I want to install it into couple of test-machines without compiling from source. So I did following..
a. make dist-xen
b. make dist-tools PYTHON_PREFIX_ARG="--install-layout=deb"
c. make dist-stubdom
This should pre-pare my dist/ directory with binaries. With the help of top-level /.install.sh I should be able to install it any other machine (same ARCH=x86_64/amd64). I've tar-zipped, copied and inflated. The target machine is a CentOS 64-bit machine whereas the build machine (my laptop) is a Debian/Ubuntu 10.04 64 bit one. After installation, my xend started, bridge-magic happened, `brctl -show` is fine, xm info / xm list is fine, ls /dev/xen is fine (evtchn,gntdev) too. But when I'm trying
to run a domU (using a working domU-xmexample-config) it has some problem with tap driver config and complains
"ValueError: need more than 1 value to unpack"
File "/usr/lib/python2.6/dist-packages/xen/xend/XendConfig.py", line 342, in __init__
File "/usr/lib/python2.6/dist-packages/xen/xend/XendConfig.py", line 857, in _sxp_to_xapi
cfg = self._parse_sxp(sxp_cfg)
File "/usr/lib/python2.6/dist-packages/xen/xend/XendConfig.py", line 720, in _parse_sxp
self.device_add(dev_type, cfg_sxp = config, target = cfg)
File "/usr/lib/python2.6/dist-packages/xen/xend/XendConfig.py", line 1448, in device_add
ret_uuid = self.device_duplicate_check(dev_type, dev_info, target, config)
File "/usr/lib/python2.6/dist-packages/xen/xend/XendConfig.py", line 1237, in device_duplicate_check
blkdev_file = blkdev_uname_to_file(dev_uname)
File "/usr/lib/python2.6/dist-packages/xen/util/blkif.py", line 95, in blkdev_uname_to_file
File "/usr/lib/python2.6/dist-packages/xen/util/blkif.py", line 90, in _parse_uname
(taptype, fn) = fn.split(":", 2)[1:3]
ValueError: need more than 1 value to unpack
in xmexample config,
kernel = "/vm/tmp/vmlinuz-188.8.131.52-domU-deb"
ramdisk = "/vm/tmp/initrd.img-184.108.40.206-domU-deb"
memory = 256
name = "debdomU"
vif = [ 'mac=6A:60:41:4A:60:41,ip=172.16.30.201,bridge=eth1' ]
disk = [ "tap:aio:/vm/tmp/core.img,xvda1,w" , "tap:aio:/vm/tmp/swap.img,xvda2,w" ]
extra = "3 console=hvc0"
vmlinuz/initrd/core.img/swap.img are made on Ubuntu and just copied over.
The same config worked earlier on a ubuntu-dom0/ubuntu-domU setup. Is this something to do with CentOS-dom0/Ubuntu-domU? Is copying binaries (pyc) built in Ubuntu wrong? Then how even xend/xendomains got started? If xend started with same python tool chain, what's wrong with domU booting up?
Please help me guys. Should I re-compile?
Xen-users mailing list
Description: Binary data
Xen-users mailing list