在vm运行时复制vmware vmdk文件

我需要将一个虚拟机从一个数据存储复制到另一个。 我正在运行ESX 3.5 U3,虚拟机大多是基于Windows的。 我不关心数据完整性,因为它只是testing目标目标上的NetApps重复数据删除,并且VM永远不会从这些文件运行。 由于使用虚拟机,我不能closures它们。 如果我试图用'cp'来复制它,我当然会得到关于locking文件的错误。

例如:“ cp: cannot open ....vmdk' for reading: Device or resource busy

有这样的伎俩吗? 用dd或cpio?

问候

看到这篇文章 ,这一个 ,似乎是你在找什么。

过程如下:

使用vmware-cmd拍摄源虚拟机的快照。

创build一个新的虚拟机,并删除其中的所有vmdks

将vmdk文件从快照复制到使用vmkfstools的新文件夹中。

修复你的configuration文件一致。

希望这可以帮助。

对于任何读这个具有VMware Workstation的线程的人来说,如果不先closures虚拟机,那么根据用户指南就无法生成独立的function副本(即备份)。 铀备份应用程序将在运行时复制虚拟机,但对于像我这样的小型启动来说,它并不便宜(150欧元)。 我在实践中发现,简单地挂起虚拟机并将文件复制到备份位置可以正常工作; 给一个完全独立的副本。 虚拟机在复制阶段只处于脱机状态,复制完成后将恢复程序和文件状态。 当你启动备份的虚拟机时,它会询问你是否移动了它或者复制了它。 复制活动虚拟机的文件的风险是可以理解的,因为在备份期间由于状态的改变备份可能不起作用。 所以我写了一个非常基本的脚本来暂停虚拟机,将文件复制到另一个位置,然后恢复虚拟机。 如果您想要副本,请给我发电子邮件。

尝试使用VMWare独立转换器,并使用它的“复制正在运行的机器”选项。 它会暂时安装一个代理; 但是应该注意确保虚拟机在转换过程中保持运行的需要。