共用方式為


VShadow 工具和範例

VShadow 是命令行工具,可用來建立和管理磁碟區陰影複製。

注意

VShadow 隨附於適用於 Windows Vista 和更新版本的 Microsoft Windows 軟體開發工具包 (SDK) 中。 VSS 7.2 SDK 包含只在 Windows Server 2003 上執行的 VShadow 版本。 如需下載 Windows SDK 和 VSS 7.2 SDK 的相關信息,請參閱 磁碟區陰影複製服務

VShadow 工具會使用命令行選項和選擇性旗標來識別要執行的工作。 不使用任何命令行選項時,VShadow 命令會建立新的陰影複製集。

VShadow 命令會執行下列作業:

建立陰影複製集

vshadow [OptionalFlags] VolumeList

此命令會建立新的陰影複製集。

VolumeList 是磁碟區名稱的清單。 VShadow 會為清單中的每個磁碟區建立一個陰影複製。 磁碟區名稱可以選擇性地以反斜杠 (\) 終止。 例如,C:C:\ 都是有效的磁碟區名稱。 您也可以指定掛接的資料夾 (例如 C:\DirectoryName, ) 或磁碟區 GUID 名稱 (例如 , \\?\Volume{bbbbcccc-1111-dddd-2222-eeee3333ffff}

OptionalFlags 是下表中選擇性旗標值的位掩碼。

選擇性旗標值 描述
-ad 這個選擇性旗標會指定差異硬體陰影複製。 這個旗標和 -ap 旗標互斥。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-ap 此可選旗標用於指定 plex 硬體陰影複製。 這個旗標和 -ad 旗標互斥。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-bc=File.xml 這個選擇性旗標會指定不可傳輸的陰影複製,並將備份元件檔儲存到指定的檔案中。 此檔案可用於後續的還原作業。 這個旗標和 -t 旗標互斥。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-exec=<Command> 這個可選參數會在陰影複製建立之後,但在 VShadow 工具結束之前,執行命令或腳本。 <Command> 可以指定可執行殼層命令或 CMD 檔案。 如果它指定了 Shell 命令,則無法指定任何命令參數。
注意: 基於安全性考慮,並讓實作保持簡單, -exec 選擇性旗標將不會接受要傳遞至命令或腳本的參數。 傳遞至選擇性旗標的 -exec 整個字串會被視為單一 CMD 或 EXE 檔案。 如需此限制的詳細資訊,請參閱 VShadow 原始程式碼。
-forcerevert 這個選擇性旗標指定只有在可以還原所有磁碟簽章時,才應該完成陰影複製作業。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
Windows Server 2003: 不支援。
-mask 這個可選的標誌指定在快照集斷開時,應該將快照 LUN 隱藏從計算機。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
Windows Server 2003: 不支援。
-nar 此選擇性旗標指定陰影拷貝而不包括自動復原功能。 如需此選項的詳細資訊,請參閱 _VSS_VOLUME_SNAPSHOT_ATTRIBUTES 列舉的旗標文件。
-norevert 這個選擇性旗標指定不應該還原磁碟簽章。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
Windows Server 2003: 不支援。
-nw 這個選擇性旗標會指定陰影複製,而不涉及寫入器。 如需沒有寫入器參與之陰影複製的詳細資訊,請參閱 陰影複製建立詳細資訊。 這個旗標和和 -wi-wx 旗標互斥。
-p 這個選擇性旗標指定持續性快照複本
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-rw 這個選擇性標誌指定陰影複製 LUN 應該在陰影複製集中斷時設置為可讀/寫。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
Windows Server 2003: 不支援。
-scsf 這個選擇性旗標會 指定用戶端可存取的陰影複製。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-script=File.cmd 這個選擇性旗標會產生 CMD 檔案,其中包含與所建立陰影複製相關的環境變數,例如陰影複製標識碼和陰影複製集標識符。
-t=File.xml 這個選擇性旗標會指定可傳輸的陰影複製,並將備份元件檔儲存到 參數指定的 File.xml 檔案中。 此檔案可用於後續匯入和/或還原作業。 這個旗標和 -bc 旗標互斥。
Windows Server 2003、Standard Edition 和 Windows Server 2003、Web Edition 不支援可傳輸的陰影複製。 具有 Service Pack 1(SP1) 的所有 Windows Server 2003 版本都支援可傳輸的陰影複製。
-tr 這個可選旗標會指定在快照建立期間應強制執行 TxF 復原。
注意: 只有 Windows 伺服器作業系統才支援此旗標。
-tracing 此可選的標記能生成詳細的輸出,可用於疑難排解。
-wait 這個選擇性旗標會導致 VShadow 工具在結束之前等待用戶確認。
-wi=<Writer> 這個選擇性旗標會驗證指定的寫入器或元件是否包含在陰影複製中。 <Writer> 可以指定元件路徑、寫入器名稱、寫入器標識碼或寫入器實例識別碼。 這個旗標和 -nw 旗標互斥。
-wx=<Writer> 這個選擇性旗標會確認指定的寫入器或元件已從陰影複製中排除。 <Writer> 可以指定元件路徑、寫入器名稱、寫入器標識碼或寫入器實例識別碼。 這個旗標和 -nw 旗標互斥。

匯入陰影複製集

vshadow [OptionalFlags] -i=File.xml

-i命令列選項會匯入可傳輸的陰影複製集。

注意

只有 Windows 伺服器作業系統才支援這個命令行選項。

File.xml 檔案必須是備份元件文件檔,以便為使用 -t-bc 選用旗標建立的可傳輸陰影複製集。

如果使用 -p 選擇性旗標建立陰影複製集,那麼該陰影複製集就是持續性陰影複製。 如果可傳輸的陰影複本集是非持久性的,它會在陰影複本建立命令執行時短暫出現,並在命令結束時自動刪除。 您只能在陰影複製建立期間匯入非持續陰影複製,方法是使用 -exec 選擇性旗標建立陰影複製集來執行呼叫 VShadow -i的 CMD 檔案。

-i命令行選項無法與其他命令行選項結合。

OptionalFlags 是下表中選擇性旗標值的位掩碼。

選擇性旗標值 描述
-exec=<Command> 這個選擇性旗標會在陰影複製匯入之後,但在 VShadow 工具結束之前執行命令或腳本。 <Command> 可以指定可執行殼層命令或 CMD 檔案。 如果指定了 shell 命令,則無法指定任何命令參數。
-tracing 這個選擇性旗標會產生詳細輸出訊息,方便進行疑難解答。
-wait 這個選擇性旗標會導致 VShadow 工具在結束之前等待用戶確認。

查詢陰影拷貝屬性

vshadow -q

vshadow -qx=<ShadowCopySetId>

vshadow -s=<ShadowCopyId>

-q命令列選項會列出電腦上所有陰影複製的屬性。

-qx命令行選項列出標識碼由<ShadowCopySetId>指定的陰影複製集中所有陰影複製的屬性。

-s命令列選項會列出由 <ShadowCopyId>指定的陰影複製的屬性。

這些命令行選項會使用 IVssBackupComponents::QueryIVssBackupComponents::GetSnapshotProperties 的組合來取得指定陰影複製集的屬性。

-q-qx-s 命令行選項互斥,無法與其他命令行選項結合。

刪除陰影複製

vshadow** -da

vshadow -do

vshadow -dx=<ShadowCopySetId>

vshadow -ds=<ShadowCopyId>

-da命令會刪除電腦上的所有陰影複本。

注意

-da命令行選項需要用戶確認。

-do命令列選項會刪除電腦上最舊的陰影複製。

-dx命令行選項會刪除由<ShadowCopySetId>指定的陰影複製集中的所有陰影複製。

-ds 命令列選項會刪除具有由 <ShadowCopyId> 指定識別碼的陰影複製。

這些命令行選項僅適用於 持續性陰影複製 。 非永久陰影複製不需要明確刪除,因為它們會在 VShadow 建立命令結束時自動刪除。

-da-do-dx-ds 命令行選項互斥,無法與其他命令行選項結合。

中斷陰影複製集

vshadow -b=<ShadowCopySetId>

vshadow -bw=<ShadowCopySetId>

-b=<ShadowCopySetId> 命令列選項會將快照集中每個快照轉換成獨立唯讀磁碟區。

-bw=<ShadowCopySetId> 命令列選項可將陰影複製集中每個陰影複製轉換為獨立的可寫入磁碟區。

注意

-b-bw 命令行選項僅支援 Windows 伺服器作業系統。

如需中斷陰影複製集的相關信息,請參閱 中斷陰影複製

陰影複製集中斷之後,陰影複製集和個別陰影複製已不存在,而且無法使用 VSS 命令進行管理。

如果陰影複製集是使用可選擇的標誌-p建立的,那麼它是持續性的。 如果可傳輸的陰影複製集是非持久的,則其會在陰影複製建立命令執行時短暫出現,並在命令返回時自動刪除。 您只能在陰影複製建立期間中斷非持續陰影複製集,方法是使用 -exec 選擇性旗標建立陰影複製集來執行呼叫 vshadow -bvshadow -bw的 CMD 檔案。

-b-bw 命令行選項互斥,無法與其他命令行選項結合。

使用 BreakSnapshotSetEx 方法分割陰影複製集

vshadow -bex

-bex 命令列選項會根據可選的 -mask-rw-forcerevert-norevert 旗標所指定的選項,中斷陰影複製集。 這個命令行選項類似於 -b-bw 命令行選項。 -bex命令行選項使用 IVssBackupComponentsEx2::BreakSnapshotSetEx 方法,而 -b-bw 命令行選項則使用 IVssBackupComponents::BreakSnapshotSet 方法。

如需中斷陰影複製集的相關信息,請參閱 中斷陰影複製

提示

-bex命令行選項僅在 Windows 伺服器作業系統上受到支援。

vshadow -bex -mask

旗幟 -mask 指定陰影複製 LUN 將會被主機遮罩。 如果指定了-mask旗標,那麼就不能指定-rw-forcerevert-norevert旗標。

vshadow -bex -rw

-rw 旗標指定陰影複製 LUN 將以讀寫磁碟區的形式暴露給主機。

vshadow -bex -forcerevert

-forcerevert 標會指定所有陰影複製 LUN 的磁碟識別碼將會還原為原始 LUN 的磁碟識別碼。 不過,如果系統上有任何原始 LUN 存在,作業將會失敗,而且不會還原任何標識碼。 這個旗標和 -norevert 旗標互斥。

vshadow -bex -norevert

旗標-norevert 指定不會還原陰影複本的 LUN 磁碟識別碼。 這個旗標和 -forcerevert 旗標互斥。

在本機披露陰影複製

vshadow -el=<ShadowCopyId>,<LocalEmptyDirectory>

vshadow -el=<ShadowCopyId>,<UnusedDriveLetter>

-el命令列選項會將掛接的資料夾或驅動器號指派給持續性陰影複製。 請注意,除非您後續呼叫 vshadow -bw 來中斷陰影複製集,否則磁碟區內容會維持只讀狀態。

注意

非永久性的陰影複製和用戶端可存取的陰影複製無法在本機公開。

例如,如果 {bbbbcccc-1111-dddd-2222-eeee3333ffff} 是現有持續性陰影複製的 GUID,而且 X: 是未使用的驅動器號,下列命令會將陰影複製公開在 X: 下:

vshadow -el={bbbbcccc-1111-dddd-2222-eeee3333ffff},x:

下列範例示範如何將相同的陰影複本展示在掛接的資料夾 C:\ShadowCopies\June23下:

mkdir c:\ShadowCopies\June23

vshadow -el={bbbbcccc-1111-dddd-2222-eeee3333ffff},c:\ShadowCopies\June23

-el命令行選項無法與其他命令行選項結合。

從遠端公開陰影複製

vshadow -er=<ShadowCopyId>,<UnusedShareName>

vshadow -er=<ShadowCopyId>,<UnusedShareName>,<PathFromRootOnShadow>

-er命令列選項會為陰影複製中的根目錄(或子目錄)指派一個唯讀共用名稱。 請注意,除非您後續呼叫 vshadow -bw 來中斷陰影複製集,否則共用內容會維持唯讀狀態。

注意

用戶端可存取的 陰影複製無法從遠端公開。

例如,如果 {bbbbcccc-1111-dddd-2222-eeee3333ffff} 是現有持續性陰影複製的 GUID,而且 share_123 是未使用的共用名稱,下列命令會在 share_123 底下公開該陰影複製:

vshadow -er={bbbbcccc-1111-dddd-2222-eeee3333ffff},share_123

下列範例示範如何在相同共用下只公開相同陰影複製的子樹(具名 Folder1\Folder2) :

vshadow -er={bbbbcccc-1111-dddd-2222-eeee3333ffff},share_123,Folder1\Folder2

-er命令行選項無法與其他命令行選項結合。

列出寫入器狀態和元數據

vshadow -ws

vshadow -wm

vshadow -wm2

vshadow -wm3

-ws命令列選項會列舉目前在電腦上執行的 VSS 寫入器,並描述其狀態。 此命令相當於 Vssadmin 清單寫入器 命令。 有六個可能的狀態值:Stable、、、FailedUnknownWaiting for freezeFrozenWaiting for completion

-wm命令行選項會列出寫入器元數據的摘要,包括受影響的磁碟區。

-wm2命令列選項會列出所有寫入器元數據。

-wm3命令列選項會列出原始 XML 格式的所有寫入器元數據。

Windows Vista 和 Windows Server 2003:-wm3不支援命令行選項。

您可以使用這項資訊來判斷要包含在磁碟區陰影複製集中的磁碟區。

注意

如果寫入器狀態為穩定或等待完成,則可以將寫入器視為處於穩定狀態,準備好進行下一次備份。

-ws-wm-wm2-wm3 命令行選項互斥,無法與其他命令行選項結合。

執行還原作業

vshadow [OptionalFlags] -r=File.xml

vshadow [OptionalFlags] -rs=File.xml

-r命令行選項會執行還原作業。

-rs命令行選項會執行仿真的還原作業。

File.xml檔案必須是為陰影複製集所建立的備份元件文件文件,並使用-t-bc選擇性旗標。

-r-rs 命令行選項互斥,無法與其他命令行選項結合。

OptionalFlags 是下表中選擇性旗標值的位掩碼。

選擇性旗標值 描述
-wi=<Writer> 這個可選標誌會驗證指定的撰寫器或組件是否包含在還原中。 <Writer> 可以指定元件路徑、寫入器名稱、寫入器標識碼或寫入器實例識別碼。
-wx=<Writer> 這個選擇性旗標會驗證指定的寫入器或元件是否已從還原中排除。 <Writer> 可以指定元件路徑、寫入器名稱、寫入器標識碼或寫入器實例識別碼。
-exec=<Command> 這個選擇性旗標會在傳送至編寫程序的預還原事件和還原後事件之間執行命令或腳本。 <Command> 可以指定可執行的 Shell 命令或 CMD 檔案。 如果它指定了 Shell 命令,就不能指定任何命令參數。
-tracing 這個選擇性旗標會產生可用於疑難解答的詳細信息輸出。

還原為先前的陰影複製

vshadow -revert=<ShadowCopyId>

注意

只有 Windows 伺服器作業系統才支援這個命令行選項。

Windows Server 2008 和 Windows Server 2003: 不支援。

命令行選項會將 -revert 磁碟區還原為由 <ShadowCopyId> 指定的先前快照。

-revert命令行選項無法與其他命令行選項結合。

重新同步 LUN

vshadow** -addresync=<ShadowCopyId> -resync=<BCDFileName> [OptionalResyncFlags]

vshadow -addresync=<ShadowCopyId>, <TargetVolumeDriveLetter> -resync=<BCDFileName> [OptionalResyncFlags]

-addresync命令列選項會指定要包含在 LUN 重新同步處理作業中的磁碟區。 參數 <ShadowCopyId> 會指定陰影複製的標識碼。 可選的 <TargetVolumeDriveLetter> 參數指定將影子複本磁碟區的內容複製到的目標磁碟區。

-resync命令行選項會起始 LUN 重新同步處理作業。 作業完成之後,每個目標 LUN 的簽章應該與目標磁碟區 LUN 的簽章相同。 參數 <BCDFileName> 會指定包含備份元件檔的 XML 檔名。

注意

-addresync-resync 命令行選項僅支援 Windows 伺服器作業系統。

Windows Server 2008 和 Windows Server 2003: 不支援。

OptionalResyncFlags 是下表中選擇性旗標值的位掩碼。

選擇性旗標值 描述
-revertsig 這個選擇性旗標會指定作業完成之後,每個目標 LUN 的簽章應該與用來建立陰影複製的原始 LUN 相同,而不是目標磁碟區 LUN。
注意:-revertsig只有在 Windows 伺服器作業系統上才支援 旗標。
Windows Server 2008 和 Windows Server 2003: 不支援。
-novolcheck 這個選擇性旗標指定 VSS 服務不應該檢查 LUN 重新同步處理作業所覆寫的未選取磁碟區。
注意:-novolcheck只有在 Windows 伺服器作業系統上才支援 旗標。
Windows Server 2008 和 Windows Server 2003: 不支援。

另請參閱

磁碟區陰影複製服務

磁碟區陰影複製 API 參考