带有blktap磁盘的Xen 4.1主机(dom0)(“tap:aio:”)未连接

xen-4.1运行Ubuntu使用blktap的问题使用dom0 xen-4.1的精确库存内核。

我得到:

[ 5.580106] XENBUS: Waiting for devices to initialise: 295s...290s. ... [ 300.580288] XENBUS: Timeout connecting to device: device/vbd/51713 (local state 3, remote state 1) 

还有一些syslog行:

 May 17 13:07:30 localhost logger: /etc/xen/scripts/blktap: add XENBUS_PATH=backend/tap/10/51713 May 17 13:07:31 localhost logger: /etc/xen/scripts/blktap: Writing backend/tap/10/51713/hotplug-status connected to xenstore. 

用tap:aio:磁盘线。 文件:/工程。

 disk = [ 'tap:aio:/data/root.img,xvda1,w', ] 

问题存在与清醒和精确度domU内核和两个客人工作在Ubuntu hardy dom0主机64位2.6.24-28-xen xen-3.3

  3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux Distributor ID: Ubuntu Description: Ubuntu 12.04 LTS Release: 12.04 Codename: precise 

就像所有事情都有问题一样。 寻求帮助通常可以解决它。 即使没有人回答这个问题。

所以答案是两倍。 显然在Ubuntu中安装xen *是不够的。 blktap和东西是分开的包和tapdisk用户空间程序和blktap模块是需要的。

安装blktap-utils和依赖关系…你将得到tapdisk并用dkms打包内核模块blktap

这还不够。 显然,Blktap在Ubuntu Hardy和Precise XEN版本(xen-3.3 – > xen-4.1)之间的某个时候变成了blktap2。 所以这些磁盘包含在'tap2:tapdisk:aio:'not'tap:aio:'

 # Use this to convert existing files perl -i.backup -pe 's/tap:aio:/tap2:tapdisk:aio:/g' *.cfg 

有关tap2磁盘选项,请参阅Xen blktap2 。


如果您仍然遇到blktap问题,那么下面的命令可能有助于诊断缺less的内容。

 ls /lib/modules/$(uname -r)/updates/dkms/blktap.ko && echo run: modprobe blktap || echo Missing module ls /usr/src/linux-headers-$(uname -r ) || echo MISSING kernel headers ls /usr/src/blktap-2* || echo MISSING blktap-dkms ls /var/lib/dkms/blktap/kernel-$(uname -r)* || echo dkms compilation failed 

并为所有的dkms模块手动激活编译:

 sudo dkms autoinstall -k $(uname -r)