如何存取 Windows 搜尋資料庫以了解損壞硬碟上的檔案?

如何存取 Windows 搜尋資料庫以了解損壞硬碟上的檔案?

我有一台 Windows 10 電腦,其中一個硬碟完全損壞(因為 BIOS 無法識別,發出奇怪的噪音並且無法使用)。它不是系統盤,但主要包含私人資料。我不太記得光碟上有什麼,這就是問題所在。為了評估損失(並評估硬碟上的進一步資料恢復程序是否值得付出代價),我想獲得有關光碟上內容的所有可能線索(文件名,可能帶有資料夾名稱就足夠了)。

我想也許 Windows 搜尋及其所有文件索引可能包含一些有關光碟上儲存的內容的信息,並且該資訊(即使只是部分資訊)可以以某種方式檢索。

是否可以存取 Windows 搜尋資料庫並檢索帶有遺失磁碟機路徑的檔案列表,如果可以,如何檢索?

請注意,這個問題不是關於損壞硬碟的資料恢復,而是關於 Windows 保留硬碟上的檔案(但目前不存在)的哪些資訊。 Windows 文件搜尋索引似乎是儲存此類資訊的潛在位置。

答案1

在評論的幫助下莫伊什·皮皮克博士我成功存取Windows搜尋資料庫。

搜尋內容預設儲存在

C:\ProgramData\Microsoft\Search\Data\Applications\Windows\Windows.edb

這是一個相當大的檔案(在我的例子中為 1GB),通常無法複製到其他地方,因為它正在被 Windows 搜尋使用。只要開啟工作管理員,搜尋「Microsoft Windows Search Indexer」並終止「Windows search」進程即可。然後將 Windows.edb 檔案複製到安全的地方。

有關搜尋資料庫的文件格式的資訊例如在本文檔中霍華德·奇弗斯,誰使用wds雕刻軟體,貌似不提供下載。還有本文作者:約阿希姆‧梅斯約阿希姆·梅茨 (Joachim Metz) 似乎也是該計畫的主要貢獻者libesedb在 Github 上,但沒有適用於 Windows 的二進位版本,並且被標記為實驗性的。

簡而言之,Windows 搜尋資料庫似乎基於可擴充儲存引擎 (ESE) 資料庫檔案 (EDB) 格式,這是一種 Windows 專有的未記錄檔案格式,具有附加的混淆和壓縮部分。

最後我找到了一個項目金正賢從 2018 年開始稱為WinSearch資料庫分析儀, 和來源(額外的依賴窗體)在 Github 上。根據博客,它是免費的(可以使用),有適用於 Windows 的二進位檔案可用,此外,透過 Microsoft 的 Visual Studio Community 版本,我可以輕鬆地自己建立該程式。

使用方法很簡單,可以選擇 Windows.edb 檔案位置,然後檢查一些標誌以了解要搜尋的內容。然後花了一段時間(約 5 分鐘),然後在表中顯示了大約 100k 條目。按檔案位置排序很簡單,並且會顯示每個檔案的元資料。

然而,回到我的初衷,丟失的硬碟上仍然存在於 Windows 搜尋資料庫中的檔案數量少得令人失望。硬碟上的數十萬個檔案最多只能儲存在該硬碟上。包含了1/10或更少(實際上是我還記得的東西),所以最終它的幫助比我想像的要小得多。儘管如此,它仍然是一種可行的方法,可以存取至少一些有關不存在且不再可存取的硬碟內容的元資訊。

答案2

這個答案與 Trilarion 對他自己的問題的回答有關。

Moishe Pippik 博士連結的有趣文件描述了索引的範圍。這可以解釋索引檔案百分比較低的原因。

此外,您可以測試如果向索引器提供包含隨機內容的檔案會發生什麼情況。該文件是否會出現在資料庫中?

索引器無法讀取未知的檔案格式。據我所知,在較舊的 Windows 版本中,可以透過提供編譯程式碼來擴展索引器,使索引器能夠讀取已建立的檔案格式。

那些從技術上無法建立索引的檔案可能不會出現在索引中。

答案3

首先是要非常精確和注重細節。你說「根本無法訪問」。這是正常的英文文法嗎?接下來的事情是「根本無法訪問」並不準確。許多人會說,一旦驅動器號仍然存在並且內容被標記為原始,他們的驅動器「根本無法訪問」。

我的定義是,如果驅動器加電時沒有異常,但電腦向驅動器發出的任何讀取嘗試失敗,則必須將其視為“根本無法訪問”。

這是對同一個表達的完全不同的理解。

您可以做的第一件事非常簡單。最好使用 Linux 機器,您可以連接驅動器並使用 lsblk 命令驗證其存在。然後,您可以使用 smartmontools 產生日誌檔案並對其進行分析。接下來的事情是 - 如果日誌檔案內容不反對它 - 嘗試使用 ddrescue 及其日誌檔案功能複製磁碟機。這將為您提供健康驅動器上希望大部分完整的副本以及未複製的缺失區域的清單。

由於偏執,您會快速複製副本並處理第二個副本。根據您的預算,您可以針對第二個副本運行不同的復原產品。像 Photorec 這樣的免費開源指紋識別專家程式將在沒有目錄和檔案結構等元資料的情況下產生結果,但 Photorec 的可用輸出將使您的記憶回到儲存在其中的內容。

使用第二個副本也可以在 Windows 電腦上完成此分析,不會造成任何損害。如果收集的資訊不充分,您的工作就會開始。

您應該先了解最常用的分割區方案(例如舊的 Intel/MBR 分割區方案)的工作原理,並了解 GPT。免費開源軟體 Testdisk 是一個可以為您提供支援的好工具。

了解了格式化磁碟機所使用的檔案系統後,您將需要了解相關的檔案系統格式,例如 NTFS。由於 NTFS 上手有點困難,您寧願使用 FAT 檔案系統進行練習。一旦您熟悉了,您可以透過覆寫 FAT 檔案系統的部分或完整 FAT(檔案分配表)來嘗試。然後需要一些程式設計來搜尋它的剩餘部分。然後您應該了解碎片整理如何影響您的成功。

了解簡單的檔案系統實作後,您將了解(大概)NTFS。相對於恢復程序,您的唯一優勢是您可以利用驅動器內容的剩餘記憶體來發揮您的優勢。

這可以帶來成功,但不能保證。

2001 年,我檢查了一個仍然使用 FAT 檔案系統的故障 XP 系統磁碟機。我唯一恢復的(一點也不重要)是他的結婚邀請函清單(xls 文件),邀請函已經發出。無法自動重建檔案 - 我必須查看以下不同的叢集。由於它是一個 xls 文件,因此未壓縮。我只是看到了文件的第二個簇,它不是線性方式的下一個簇。今天,對於 Excel xlsx 類型檔案中使用的壓縮,我永遠無法成功完成該任務。

相關內容