Copy-SCVirtualHardDisk
将 VMware 虚拟硬盘文件 (.vmdk 文件) 复制到基于 Windows 的虚拟硬盘文件, (.vhd 文件) ,并将虚拟硬盘转换为 VMM 环境中使用。
语法
Copy-SCVirtualHardDisk
[-VMMServer <ServerConnection>]
-VMDKPath <String>
[-LibraryServer <LibraryServer>]
[-SourceVMHost <Host>]
-VMHost <Host>
-Path <String>
[-Owner <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
说明
Copy-SCVirtualHardDisk cmdlet 将 VMware 虚拟硬盘文件 (.vmdk 文件) 复制到基于 Windows 的虚拟硬盘文件, (.vhd 文件) ,并转换虚拟硬盘,以便在 Virtual Machine Manager (VMM) 环境中使用。 此复制操作将保留磁盘的内容。
VMware 虚拟硬盘以 .vmdk 文件的形式存储,其中包含虚拟机的来宾操作系统、应用程序及数据。 Copy-SCVirtualHardDisk 支持的 VMWare 虚拟硬盘格式包括:
-- 整体式Sparse
-- 整体式Flat
-- vmfs
-- twoGbMaxExtentSparse
-- twoGbMaxExtentFlat
Copy-SCVirtualHardDisk cmdlet 将其输入作为 .vmx 文件指向的 .vmdk 文件:
.vmx 文件指向包含元数据的 .vmdk 文件,该文件又指向二进制 .vmdk 文件。
使用 Copy-VMDK cmdlet 指定的 .vmdk 文件是包含元数据的 .vmdk 文件 (而不是二进制 .vmdk 文件) 。
示例
示例 1:将 VMM 库中的 VMware .vmdk 文件转换为主机上基于 Windows 的 .vhd 文件
PS C:\> $LibServ = Get-SCLibraryServer -ComputerName "LibServer01.Contoso.com"
PS C:\> $VMHost = Get-SCVMHost -ComputerName "VMMHost01.Contoso.com"
PS C:\> Copy-SCVirtualHardDisk -LibraryServer $LibServ -VMDKPath "\\LibServer01\MSSCVMMLibrary\VMware\VM01.vmdk" -VMHost $VMHost -Path "C:\StoredWindowsVMs"
第一个命令获取名为 LibServer01 的库服务器对象,并将对象存储在$LibServ变量中。
第二个命令获取名为 VMHost01 的主机对象,并将对象存储在$VMHost变量中。 VMHost01 是 Hyper-V 主机。
最后一个命令复制并转换位于指定路径 (\LibServer01\MSSCVMMLibrary\VMware\VM01.vmdk) 库服务器上的 .vmdk 文件,并将生成的 .vhd 文件存储在 VMHost01 上的指定路径 (C:\StoredWindowsVMs) 。 请注意,当与 Copy-SCVirtualHardDisk 一起使用时,Path 参数不能采用 UNC 路径。
注意: Copy-SCVirtualHardDisk 将其输入作为 .vmx 文件指向的 .vmdk 文件:
.vmx 文件指向包含元数据的 .vmdk 文件,该文件又指向二进制 .vmdk 文件。
使用 Copy-SCVirtualHardDisk 指定的 .vmdk 文件是包含元数据的 .vmdk 文件 (而不是二进制 .vmdk 文件) 。
参数
-JobVariable
指定跟踪作业进度,并将其存储在此参数命名的变量中。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LibraryServer
指定一个 VMM 库服务器对象。
Type: | LibraryServer |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Owner
以一个有效的域用户帐户形式指定 VMM 对象的所有者。
- 示例格式:
-Owner "Contoso\PattiFuller"
- 示例格式:
-Owner "PattiFuller@Contoso"
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
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 |
-SourceVMHost
指定源虚拟主机对象。
Type: | Host |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMDKPath
指定要转换为基于 Windows 的虚拟硬盘文件(.vhd 文件)的 VMware 虚拟硬盘文件(.vmdk 文件)的路径。 VMDK 表示虚拟机磁盘 (VMDK) 文件格式。
示例格式: -VMDKPath "\\FileServer01\MSSCVMMLibrary\VMDKS\VM01.vmdk"
示例格式: -VMDKPath "\[storage1\] /VM01/VM01.vmdk"
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMHost
指定一个虚拟主机对象。 VMM 支持 Hyper-V 主机、VMware ESX 主机和 Citrix XenServer 主机。
有关每种类型的主机的详细信息,请参阅 Add-SCVMHost cmdlet。
Type: | Host |
Position: | Named |
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 |
输出
StandaloneVirtualHardDisk[]
此 cmdlet 返回 独立VirtualHardDisk 对象的数组。