Share via


Copy-SCVirtualHardDisk

將 VMware 虛擬硬碟檔案 (.vmdk 檔案) 複製到以 Windows 為基礎的虛擬硬碟檔案, (.vhd 檔案) ,並將虛擬硬碟轉換成 VMM 環境中使用。

Syntax

Copy-SCVirtualHardDisk
    [-VMMServer <ServerConnection>]
    -VMDKPath <String>
    [-LibraryServer <LibraryServer>]
    [-SourceVMHost <Host>]
    -VMHost <Host>
    -Path <String>
    [-Owner <String>]
    [-RunAsynchronously]
    [-PROTipID <Guid>]
    [-JobVariable <String>]
    [<CommonParameters>]

Description

Copy-SCVirtualHardDisk Cmdlet 會將 VMware 虛擬硬碟檔案 (.vmdk 檔案) 複製到以 Windows 為基礎的虛擬硬碟檔案, (.vhd 檔案) ,並將虛擬硬碟轉換為 Virtual Machine Manager (VMM) 環境中使用。 此複製操作會保留磁碟的內容。

VMware 虛擬硬碟存放於 .vmdk 檔案,其中包含虛擬機器的來賓作業系統、應用程式及資料。 Copy-SCVirtualHardDisk支援的 VMWare 虛擬硬碟格式包括:

-- monolithicSparse

-- 整合型擴充

-- vmfs

-- twoGbMaxExtentSparse

-- twoGbMaxExtentFlat

Copy-SCVirtualHardDisk Cmdlet 會採用 .vmdk 檔案指向的 .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 主機。

最後一個命令會在程式庫伺服器上複製並轉換位於指定路徑的 .vmdk 檔案, (\LibServer01\MSSCVMMLibrary\VMware\VM01.vmdk) ,並將產生的 .vhd 檔案儲存在 VMHost01 上的指定路徑 (C:\StoredWindowsVMs) 。 請注意,搭配Copy-SCVirtualHardDisk使用Path參數時,無法接受 UNC 路徑。

注意: Copy-SCVirtualHardDisk 會採用 .vmdk 檔案指向的 .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 提示) 效能和資源優化提示的識別碼。 此參數可讓您稽核 PRO 秘訣。

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

-RunAsynchronously

表示作業會以非同步方式執行,讓控制項立即返回命令殼層。

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 會傳回 StandaloneVirtualHardDisk 物件的陣列。