正如 Chris Benninger 所说:http://www.benninger.ca/?p=58许多人都遇到了 Squeeze 和 xen4.0 的问题,并得到以下答复:
launch_vm: SETVCPUCONTEXT failed (rc=-1)
但似乎没人知道解决方案是什么。我也不知道,但至少在这里,解决方案可能会被记录下来。
就我而言,我可以启动一台客户机。第二台机器的相同配置失败。无论我先启动哪台,那台都会运行,另一台会出错。
我工作的地方至少有十几个其他系统可以很好地运行 Squeeze 和 64 位 XEN,但家里的这台新机器却不行。
答案1
查看 http://wiki.debian.org/Xen “配置域 0 内存”
/etc/default/grub
GRUB_CMDLINE_XEN="dom0_mem=1024M"
/etc/xen/xend-config.sxp
(dom0-min-mem 1024)
(enable-dom0-ballooning no)
对我来说不再有“launch_vm:SETVCPUCONTEXT 失败 (rc=-1)”了。
答案2
我遇到了这个问题,配置为 vcpus=2。我将其更改为 vcpus=1,然后虚拟机启动正常。
我目前有 6 个核心,核心 0 和 1 固定到 Dom0,然后一些 CPU 固定,一些没有。当我遇到这种情况时,我总共使用了 9 个核心。更改为 vcpus=1 后,总共有 10 个核心。
下次我重新启动时,DomU 将被固定到核心 2-5,看看这是否有区别。我觉得这里已经达到了某种限制,但我不确定那是什么。
答案3
当我遇到此问题时,我有 3 个客户机正在运行(4 个核心可用)。当我停止其中一个时,我可以启动之前失败的那个。不幸的是,停止的那个(虚拟机中的“halt”)完全损坏(ext4:挂载失败,fsck 杀死所有文件,lvm 无法删除卷...)。
现在我减少了分配的内存,并且它可以工作(在重新创建损坏的图像之后) - 所以也许检查您分配的内存是否比实际拥有的更多。