How to Move or Copy a Virtual Machine

通过此方式移动的虚拟机,可以保存完整的虚拟机配置(CPU、内存、网络mac地址等)

导出模板机

将作为模板的虚拟机导出,导出后原存在的虚拟机依然存在,不会被删除

  • 选中需要导出的模板机,右键选中该虚拟机,选择导出
  • 选择导出存放模板机的位置
  • 正在导出

导入虚拟机

  • 选中导入的服务器,右键该服务器,选择导入虚拟机
  • 点击下一步
  • 选择需要导入的虚拟机存放路径,点击下一步
  • 选择虚拟机
  • 选择导入类型

就地注册–此类型假定导出文件位于你将在其中存储和运行虚拟机的位置。 导入的虚拟机具有与导出时相同的 ID。 因此,如果已向 Hyper-v 注册了虚拟机,则需要在导入工作前将其删除。 导入完成后,导出文件将变为运行状态文件,并且无法删除。适用于迁移虚拟机。

还原虚拟机–将虚拟机还原到你选择的位置,或者使用默认的 hyper-v。 此导入类型将创建已导出文件的副本,并将其移动到所选位置。 导入完成后,虚拟机具有与导出时相同的 ID。 因此,如果虚拟机已在 Hyper-v 中运行,则需要先删除该虚拟机,然后才能完成导入。 导入完成后,导出的文件将保持不变,并且可以删除或重新导入。

复制虚拟机–你可以选择文件的位置。 不同之处在于导入的虚拟机具有新的唯一 ID,这意味着你可以多次将虚拟机导入同一主机。

  • 复制虚拟机需要重新指定虚拟机配置文件存、检查点存放路径,就地注册将当前路径作为虚拟机存放路径
  • 选择存放虚拟机磁盘存放路径
  • 正在导入虚拟机
  • 导入成功
  • 更改虚拟机名字

复制虚拟机

复制虚拟机的主机名字将会和原有虚拟机相同,所以需要对复制的虚拟机进行后续操作。

  • 首先将该虚拟机设置中网卡选择没有链接
  • 进入该虚拟机,如果是加域主机,先退域,并且更改主机名
  • 运行系统盘内的Sysprep工具删除系统特定的信息,将会重置计算机安全标识符(SID)C:\Windows\System32\Sysprep\
  • 重新加域

PowerShell

  • 导出虚拟机

在替换 <vm 名称> 和 <>路径后,以管理员身份打开会话并运行如下所示的命令:

Export-VM -Name \<vm name\> -Path \<path\>
  • 导入虚拟机

就地注册

此类导入使用导入时存储它们的文件,并保留虚拟机的 ID。 以下命令显示了导入文件的示例。 使用自己的值运行类似的命令。

Import-VM -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx'

还原

若要导入虚拟机为虚拟机文件指定自己的路径,请运行如下所示的命令,并将示例替换为值:

Import-VM -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx' -Copy -VhdDestinationPath 'D:\Virtual Machines\WIN10DOC' -VirtualMachinePath 'D:\Virtual Machines\WIN10DOC'

作为副本导入

若要完成复制导入并将虚拟机文件移动到默认的 Hyper-v 位置,请运行如下所示的命令,并将示例替换为值:

Import-VM -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx' -Copy -GenerateNewId

参考资料:

Microsoft: Export and Import virtual machines

Was this article helpful?

Related Articles