沒有寫入器參與的還原

寫入器參與 VSS 備份的設計目的是允許應用程式控制其還原資料的使用方式。

一般而言,如果系統上有寫入器可用,則不建議將資料還原到其原始位置,而不需要寫入器參與。 這類還原可能會遇到鎖定的目的地檔案,並執行損毀資料的重大風險。

不過,備份應用程式可能想要或需要還原 VSS 備份,而不需要寫入器參與的原因如下:

  • 資料是由 VSS-unaware 應用程式所管理。 幾乎每個系統都會有一些應用程式,也就是文字編輯器、郵件讀取器、字處理器等等,這些是 VSS 未察覺的。 您無法使用寫入器參與來還原此資料。

    一般而言,這種類型的資料不是系統或服務關鍵性,而且還原它應該不會有問題,或至少不會比在傳統還原期間有問題。

    如同傳統還原的準備,如果可能的話,還原操作員應該先嘗試暫停或終止這類應用程式,再開始 VSS 還原。

  • 遺漏 VSS 寫入器。 還原損毀系統的狀態時,這種情況可能相當常見。 備份作業必須判斷是否要還原遺漏寫入器的檔案。 如果需要還原,則可以還原檔案,就像傳統備份一樣還原它們一樣。

  • 寫入器資料的私人還原。 要求者可以選擇將執行中寫入器的資料還原到某些私人位置,而不需要通知寫入器。 其中一個範例可能是還原寫入器的資料,以支援離線比較。 在這種情況下,要求者不會想要在執行還原時使用 新的目標位置 ,因為它不想讓寫入器存取資料。

  • 寫入器不想在還原期間涉及。 寫入器會針對IVssCreateWriterMetadata::SetRestoreMethodwriterRestore參數傳入 VSS_WRE_NEVER,以指出此問題。

  • 寫入器需要自訂還原方法。 寫入器表示它需要自訂還原,方法是傳入IVssCreateWriterMetadata::SetRestoreMethod的方法參數VSS_RME_CUSTOM。 在此情況下,除非該寫入器的自訂還原檔另有指示,否則此寫入器不應該參與還原程式。

要求者在對 IVssBackupComponents::SetSelectedForRestore的呼叫中指定該寫入器的其中一個元件,在還原程式中牽涉到寫入器。 只要不要在呼叫 IVssBackupComponents::SetSelectedForRestore中指定該寫入器的任何元件,即可還原寫入器的資料,而不涉及寫入器。 如果寫入器不預期任何還原事件,則涉及還原程式中的寫入器可能會導致該寫入器回報假性錯誤。