不久前,我決定在全新安裝過程中的不同時刻為我的工作站建立幾個 Windows 映像備份。
在執行此操作時,我決定將包含 VHD 的資料夾重新命名為'Backup <Date>'
我選擇的其他名稱。
當時我沒有費心測試恢復仍然有效。
現在我開始使用這些備份對另一台電腦進行裸機恢復。
問題是恢復無法「看到」任何備份。
所以我推斷也許我需要將它們重新命名回模式,'Backup <Date>'
不幸的是我無法確定最初在這裡使用的確切值。我已經嘗試過最好的客人,但仍然找不到圖像。我嘗試過網路復原和 USB 硬碟復原。也沒有運氣。
PS 我知道我可以從 VHD 中檢索文件,問題是我試圖節省重新安裝大量大型應用程式的時間......而不是嘗試恢復資料。
答案1
不確定究竟發生了什麼,所以如果我提出不好的建議,請原諒我;我使用 Acronis 進行備份,而不是 Windows;也就是說,我的理解是,這只是 GUI 的系統日期,這樣您就可以從清單中選擇任何日期應該以正確的格式工作(如果這是正確的);
為了了解格式,您可以建立一個新的備份,並將該格式複製到具有合理正確日期的舊備份;可能還有一些註冊表鍵發生更改,因此您可能需要檢查一下。
如果這不起作用,您有很小的機會可以使用Acronis(無插件)等專有備份軟體,它可能能夠「讀取」您的檔案:Acronis 允許在Acronis 和Windows 之間進行轉換,然後再轉換回來。
希望這可以幫助?
答案2
這是我到目前為止所發現的:
以下更改將導致備份無法識別(我正在使用測試wbadmin get versions -backupTarget:D:
)
- 如果您
MediaId
從根目錄刪除或修改該文件 - 刪除或修改
Catalog/GlobalCatalog
檔案(刪除BackupGlobalCatalog
好像沒有效果) - 將資料夾重命名
Backup <Date>
為其他名稱(我嘗試將其更改為 1 秒) - 如果它不在
D:\WindowsImageBackup\<PC-NAME>\
資料夾內(在我的範例中)
您可以刪除該SPPMetadataCache
目錄,但它似乎沒有效果 - 備份仍然可以識別。
因此,到目前為止,最重要的部分是 MediaId、GlobalCatalog、帶日期的資料夾及其內容。
待續...
更新:MediaId 包含 GlobalCatalog 檔案的參考...
更新 2:我將嘗試使用 powershell 腳本進行暴力破解...
更新 3:我使用極其緩慢的 powershell 腳本找到了正確的資料夾名稱:
#must match the starting date of the folder
$date = Get-Date '15/10/2010 00:34:24 AM'
$nextDate = $date.AddDays(1)
cd "D:\WindowsImageBackup\My-PC\"
$dateString = Get-Date $date -format "yyyy-MM-dd HHmmss"
$nextFolder = "Backup $dateString"
while ($date -le $nextDate)
{
$nextFolder >> out.txt
wbadmin get versions -backupTarget:d: >> out.txt
$folder = $nextFolder
$date = $date.AddSeconds(1)
$dateString = Get-Date $date -format "yyyy-MM-dd HHmmss"
$nextFolder = "Backup $dateString"
ren $folder $nextFolder
}
只需在 out.txt 檔案中搜索,直到您看到“目標”一詞。
答案3
透過查看 SPPMetadataCache 資料夾,我找到了原始 PC 名稱,以及 WindowImageBackup 下子資料夾的原始名稱。其中有一個文件,如果您用記事本打開該文件,您將看到原始名稱位於許多其他資料的開頭附近。然而......這並不完全明顯,所以這假設你有一些知道它原來叫什麼。