Skip to main content

2026 年 4 月 16 日

即時複製維護公用程式

在連線伺服器上提供三個公用程式,可用於維護 vCenter Server 中的即時複製虛擬機器 (VM) 及其所在的叢集。

這些公用程式為 IcMaint.cmdIcUnprotect.cmdIcCleanup.cmd,位於 Horizon Connection Server 的 Program Files 目錄結構下的 bin 資料夾中。

IcMaint.cmd

通常,當您將 ESXi 主機置於維護模式時,Horizon 8 會自動刪除父虛擬機器,使主機能在無需手動介入的情況下進入維護模式。

但是,您可以使用此命令刪除 cp-parent 虛擬機器。主機不會自動進入維護模式。若要對主機執行維護,vCenter Server 管理員必須手動讓主機進入維護模式。

語法:

IcMaint.cmd -vc hostname_or_IP_address -uid user_ID -hostName ESXi_hostname -maintenance ON|OFF

參數:

  • -vc vCenter Server 的主機名稱或 IP 位址

  • -uid vCenter Server 使用者識別碼

  • -hostname ESXi 主機名稱

  • -maintenance ON|OFF

    此參數會指定主機是否可用來主控最佳配置映像虛擬機器。

    在主機上執行此命令後,InstantClone.Maintenance 註解值會設為 1,且會刪除最佳配置映像虛擬機器。刪除最佳配置映像虛擬機器後,InstantClone.Maintenance 註解值會設為 2,且將不會在主機上建立其他最佳配置映像虛擬機器。當您再次使用 -maintenance OFF 執行此命令時,系統會清除 InstantClone.Maintenance 註解值,讓該主機可用於裝載最佳配置映像虛擬機器。

所有參數皆為必要參數。

IcUnprotect.cmd

ClonePrep 建立資料夾和虛擬機器後,您可以使用此公用程式取消保護資料夾和虛擬機器、刪除虛擬機器,以及偵測最佳配置映像或快照已刪除的虛擬機器。ClonePrep 是在建立程序期間自訂即時複製的機制。

**附註:**在即時複製作業期間執行的內部服務會偵測是否有任何內部資料夾需要重新保護。如果這些資料夾不是空的,則服務會自動再次保護資料夾。

語法:

IcUnprotect.cmd -vc hostname_or_IP_address -uid user_ID [-includeFolders][-skipCertVeri]

參數:

  • -action

    您可以針對此參數使用下列選項:

    • unprotect。取消保護內部虛擬機器。
    • delete。刪除內部虛擬機器。
    • detect。偵測並列出最佳配置映像或快照已刪除的內部虛擬機器。 若未指定 -action參數,依預設將不會保護內部虛擬機器。
  • -vc vCenter Server 的主機名稱或 IP 位址

  • -uid vCenter Server 使用者識別碼

  • -clientId 即時複製用戶端識別碼 (選用)

    若未指定 clientId,則會移除對所有資料中心內的所有 ClonePrep 虛擬機器的保護。

  • -domain 網域名稱 (選用)

    您可以使用多個以逗號分隔且不含空格的網域名稱。

  • -host 主機名稱 (選用)

    您可以使用多個以逗號分隔且不含空格的主機名稱。

  • -datastore 資料存放區名稱 (選用)

    您可以使用多個以逗號分隔且不含空格的資料存放區名稱。

  • -vmName 虛擬機器名稱 (選用)

    您可以使用多個以逗號分隔且不含空格的虛擬機器名稱。

  • -vmType 內部虛擬機器類型 (選用)

    您可以使用多個以逗號分隔且不含空格的虛擬機器類型。您可以使用範本、複本、父系作為此參數的選項。

  • -includeFolders 包含資料夾

    此參數會取消保護虛擬機器和資料夾。

  • -skipCertVeri 略過憑證驗證

    IcUnprotect.cmd 強制執行主機名稱驗證。指定命令參數時,您必須輸入 vCenter Server 的正確主機名稱,而非其 IP 位址。若要停用主機名稱驗證並改為使用 vCenter Server 的 IP 位址,請使用 -skipCertVeri

指定下列參數以刪除 vCenter Server 中的所有父虛擬機器:

IcUnprotect -action delete -vc <IP address of vCenter Server> -uid <vCenter Server user ID> -clientId <instant clone client ID> -host <hostname 1>,<hostname 2> -vmType parent

指定下列參數以刪除 vCenter Server 中的特定父虛擬機器:

IcUnprotect -action delete -vc <IP address of vCenter Server> -uid <vCenter Server user ID> -clientId <instant clone client ID> -host <hostname 1>,<hostname 2> -vmType parent -vmName <parent VM name 1>,< parent VM name 2>

IcCleanup.cmd

您可以使用此公用程式來取消保護和刪除即時複製所建立的部分或所有內部虛擬機器。此公用程式還提供了一個清單命令,此命令可根據其最佳配置虛擬機器和用來建立即時複製集區的快照,將內部虛擬機器分組到階層式結構中。清單命令具有一個偵測選項,此選項僅會顯示缺少預備標籤或快照的內部虛擬機器群組。然後,您可以取消保護和刪除特定群組或所有群組。您也可以將所有群組輸出到磁碟檔案,供未來參考。

語法:

iccleanup.cmd -vc vcName -uid userId [-skipCertVeri] [-clientId clientUuid]

參數:

  • -vc vCenter Server 的主機名稱或 IP 位址
  • -uid vCenter Server 使用者識別碼
  • -skipCertVeri 略過 vCenter Server 憑證驗證 (選用)
  • -clientId 用戶端 UUID,即由連線伺服器與一或多個複本伺服器所組成之伺服器叢集的唯一識別碼。(選用)

**附註:**若要尋找用戶端 UUID,請登入連線伺服器或任一複本伺服器並執行 ADSI Edit。在包含 DC=vdi 的 DC 項目中,導覽至 OU=Properties > OU=Global > CN=Common,找到 pae-GUID 的值,即為用戶端 UUID 的值。若未指定用戶端 UUID,清理工具將處理所有內部虛擬機器。如果指定了用戶端 UUID,則清理工具只會處理屬於該特定用戶端 UUID 的內部虛擬機器。

命令:

  • list 列出部分或全部內部虛擬機器,並以階層結構方式呈現,也稱為內部虛擬機器群組。選項包括:

    • -all 列出所有內部虛擬機器群組

    • -D,--detect 偵測模式只會列出缺少預備標籤或快照的內部虛擬機器群組

    • -h,--help 列印此命令可用的使用方式和選項 執行list命令後,您可以查看以階層式結構 (稱為內部虛擬機器群組) 呈現的合格內部虛擬機器。對於這些內部虛擬機器群組,您可以執行以下命令:

    • unprotect 使用下列選項取消保護部分或所有內部虛擬機器群組:

      • -all 取消保護所有的內部虛擬機器。若未使用 -I選項,您必須指定 -all 才能取消保護所有的內部虛擬機器群組
      • -I,--index 取消保護特定的內部虛擬機器群組
      • -h,--help 列印此命令可用的使用方式和選項
      • **附註:**若要取消保護個別虛擬機器群組,請使用 vCenter vSphere UI 中內部範本虛擬機器的索引來篩選該虛擬機器群組。接著,針對每部機器逐一使用 unprotect 公用程式。例如,在 vCenter vSphere UI 的詳細目錄中列出的內部範本虛擬機器中,請從清單頂端開始計算內部範本虛擬機器,並提供要取消保護之實體的索引值。
    • delete 刪除部分或所有的內部虛擬機器群組

    • output 將內部虛擬機器群組輸出到磁碟檔案中。

      • -F,--file用來儲存內部虛擬機器群組的檔案名稱
      • -h,--help 列印此命令可用的使用方式和選項
    • back返回主功能表

    • unprotect 取消保護部分或所有的內部虛擬機器,包括資料夾。選項包括:

      • -A,--adDomain 網域名稱
      • -H,--host 主機名稱
      • -D,--datastore 資料存放區名稱
      • -T,--vmType 內部虛擬機器類型:範本、複本或父系
      • -N,--name 內部虛擬機器名稱
      • -I,--includeFolders 包含內部虛擬機器資料夾
      • -all 取消保護所有的內部虛擬機器
      • -h,--help 列印此命令可用的使用方式和選項
    • delete 刪除部分或所有的內部虛擬機器,包括資料夾。選項包括:

      • -A,--adDomain 網域名稱
      • -H,--host 主機名稱
      • -D,--datastore 資料存放區名稱
      • -T,--vmType 內部虛擬機器類型:範本、複本或父系
      • -N,--name 內部虛擬機器名稱
      • -I,--includeFolders 包含內部虛擬機器資料夾
      • -all 刪除所有的內部虛擬機器
      • -h,--help 列印此命令可用的使用方式和選項
    • exit 登出 vCenter Server 並結束程式

取消保護特定虛擬機器

依照以下資訊選擇合適的公用程式,依您的需求取消保護特定虛擬機器。目前尚無支援的公用程式可在取消保護後重新保護虛擬機器。

IcUnprotect.cmd - 此公用程式提供多種方法來取消保護虛擬機器和資料夾。

  • `-vmName` 依虛擬機器名稱取消保護  
    
  • `-vmType` 依虛擬機器類型取消保護 (例如,父系)  
    
  • `-includeFolders` 取消保護所有虛擬機器,包括相關的資料夾
    

IcCleanup.cmd - 此公用程式提供更詳細的選項來取消保護虛擬機器。

  • `-list` 顯示虛擬機器群組清單及其索引號碼。
    
  • `-unprotect -I` <index> 使用清單中的索引取消保護虛擬機器群組
    
  • `-unprotect -N` <vmName> 依虛擬機器名稱取消保護
    
  • `-unprotect -T` <vmType> 依虛擬機器類型取消保護
    
  • `-unprotect -all` 取消保護所有虛擬機器
    
  1. 執行 iccleanup.cmd -vc <host> -uid <username>

  2. 選取 list 選項以檢視所有虛擬機器群組及其對應索引。

  3. 使用適當的 unprotect - 命令來取消保護特定虛擬機器。以下範例使用 -unprotect -I (unprotect -I 31)。

Unprotect 命令顯示所有索引為 31 的項目。

此頁面對您有幫助嗎?

針對本主題提供意見回饋

本主題對您有幫助嗎?

請勿填寫任何個人或機密資訊。

正在產生連結…