在实际工作环境启动xenserver上的虚拟机出现了下面错误问题:

 

出现错误的过程:

一个pool中3台机器,其中一台(也就是vm windows7(1)的host machine)挂了,想把此虚拟机启动到其他机器上,就出现了此问题
解决方法:
 

1.    先找到此虚拟机对应的Vbd list
         xe vbd-list vm-uuid=8017032a-7fee-5f77-b1e1-19e82422f924
2.   上图中我们看到此虚拟机对应的VDI的
       UUID=b23b87f3-f6d1-402e-bc19- 1b0f13d7a2e5
3.    Detach此VDI
         xe vdi-forget uuid=b23b87f3-f6d1-402e-bc19-1b0f13d7a2e5
4.     在重新scan此VDI所在的存储
        xe sr-scan uuid= 04868730-71ab-551f-3fe6-8178a97acb23
5.   将原来的VDI重新挂载到原来的虚拟机
     xe vbd-create vdi-uuid= b23b87f3-f6d1-402e-bc19-1b0f13d7a2e5 vm-uuid= 8017032a-7fee-5f77-b1e1-19e82422f924 bootable=true device=0 type=Disk mode=RW
  注:将此VDI重新挂载到VM
         Bootable=yes:从此VDI启动
         Device=0:第一个磁盘,如果有第二个,过程同上
         Mode=RW:此磁盘可以读写

重新启动虚拟机,可以正常启动:

 

OK