Move-SCVirtualHardDisk

将虚拟硬盘文件从一个位置移到同一主机上的另一个位置,或者当与 Move-SCVirtualMachine 一起使用时,移动到其他主机上的位置。

语法

Move-SCVirtualHardDisk
    [-VMMServer <ServerConnection>]
    -Bus <Byte>
    -LUN <Byte>
    [-SCSI]
    -JobGroup <Guid>
    -Path <String>
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [<CommonParameters>]
Move-SCVirtualHardDisk
    [-VMMServer <ServerConnection>]
    -Bus <Byte>
    -LUN <Byte>
    [-IDE]
    -JobGroup <Guid>
    -Path <String>
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [<CommonParameters>]
Move-SCVirtualHardDisk
    [-VirtualHardDisk] <StandaloneVirtualHardDisk>
    [-JobGroup <Guid>]
    -Path <String>
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [<CommonParameters>]

说明

Move-SCVirtualHardDisk cmdlet 将基于 Windows 的虚拟硬盘文件 (.vhd 文件) 或基于 VMware 的虚拟硬盘文件 (.vmdk 文件) 从同一主机上的一个位置移到另一个位置。 还可以将 Move-SCVirtualHardDiskMove-SCVirtualMachine cmdlet 配合使用,将虚拟硬盘文件移动到其他主机上的位置。

可以使用此 cmdlet 执行以下任务:

  • 在正在运行的 VMware 虚拟机上移动虚拟硬盘,不会中断服务。

  • 在正在运行的 Windows Server 2008 R2、Windows Server 2012或Windows Server 2016虚拟机上移动虚拟硬盘,服务中断最少。 在这种情况下,请将 Move-SCVirtualHardDiskMove-SCVirtualMachine 配合使用。

  • 如果虚拟机处于已停止状态或处于已保存状态,请在任何类型的主机上移动虚拟机上的虚拟硬盘。 在这种情况下,请将 Move-SCVirtualHardDisk 与 Set-SCVirtualMachine 配合使用。 如果以下任一条件为 true,则支持此选项:

-- 虚拟机位于使用 Windows Server 2008 R2、Windows Server 2012或Windows Server 2016 Hyper-V 技术或 VMware ESX 主机上的主机上,并且虚拟机处于已保存状态或处于已停止状态。

-- 虚拟机位于任何其他受支持的主机上,并且处于已停止状态。

用法示例:

  • 如果主机有多个物理磁盘驱动器,并且虚拟机有两个虚拟硬盘 (一个磁盘可能包含操作系统,另一个磁盘可能包含数据) ,则可以使用此 cmdlet 将其中一个虚拟硬盘移动到不同的物理硬盘,以提高两个虚拟硬盘的性能。

  • 如果虚拟机有一个动态扩展的虚拟硬盘,并且发现虚拟硬盘已扩展到主机上当前物理硬盘上的大部分空间,则可以使用此 cmdlet 将扩展的虚拟硬盘移动到更大的物理硬盘(如果主机上有可用)。

示例

示例 1:将虚拟硬盘文件从一个位置移到同一主机上的另一个位置

PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $VHD = $VM.VirtualHardDisks[0]
PS C:\> Move-SCVirtualHardDisk -VirtualHardDisk $VHD -Path "C:\VHDs"

第一个命令获取名为 VM01 的虚拟机对象,并将该对象存储在$VM变量中。

第二个命令将第一个虚拟硬盘对象存储在$VHD变量中的 VM01 上。

最后一个命令将存储在$VHD中的虚拟硬盘移动到现有文件夹“C:\VHD”。

参数

-Bus

指定要将虚拟磁盘驱动器或虚拟 DVD 驱动器附加到的 IDE 总线,或附加到虚拟磁盘驱动器的 SCSI 总线。

Type:Byte
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IDE

指定 IDE 作为总线类型,用于连接在虚拟机上或模板中配置的虚拟磁盘驱动器对象或虚拟 DVD 驱动器对象。

示例格式: -IDE -Bus 0 -LUN 1

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-JobGroup

在运行最后一个包含相同作业组标识符的命令之前,为作为集合运行的一系列命令指定标识符。

Type:Guid
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

指定跟踪作业进度,并将其存储在此参数命名的变量中。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LUN

为虚拟磁盘驱动器对象或 IDE 总线上的虚拟 DVD 驱动器对象或 SCSI 总线上的虚拟磁盘驱动器对象指定逻辑单元号 (LUN) 。

  • 示例格式: -IDE -Bus 1 -LUN 0
  • 示例格式: -SCSI -Bus 0 -LUN 1
Type:Byte
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Path

指定操作的目标路径。

示例格式:

  • 本地路径: -Path "F:\"
  • UNC 路径: -Path "\\Library\Templates"
  • 卷 GUID 路径: -Path "\\?\Volume{4703c1ea-8ae7-11db-b473-00123f7603e3}\"
  • VMware ESX 路径: -Path "\[storage1\]\MyVMwareFolderForVMs\MyVM.vmx"
  • Citrix XenServer 路径: -Path "Local storage\[99b6212f-b63d-c676-25f9-d6c460992de7\]"
Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

指定触发此操作 (PRO 提示) 的性能和资源优化提示的 ID。 此参数允许审核 PRO 提示。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

指示作业以异步方式运行,以便控件立即返回到命令 shell。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SCSI

指定 SCSI 作为总线类型,用于连接在虚拟机上或模板中配置的虚拟磁盘驱动器对象。

示例格式: -SCSI -Bus 0 -LUN 0

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VirtualHardDisk

指定虚拟硬盘对象。

Type:StandaloneVirtualHardDisk
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMMServer

指定VMM 服务器对象。

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

输出

VirtualHardDisk

此 cmdlet 返回 VirtualHardDisk 对象。