恢復FAT16下文件夾,實際上就是恢復該文件夾下所有的文件,最終仍然是遍歷至各個文件目錄項,根據目錄項中記錄的文件起始簇和文件大小恢復文件。文件的可恢復性仍然是取決于該文件存儲的連續性。
對于一個被刪除的文件夾,如何確定其目錄內有多少個子目錄或文件是一個重要的問題。
恢復被刪除的文件時,可以假定它是連續存儲的,根據它的起始簇及文件大小進行恢復,恢復一個被刪除的文件夾,首先要確定這個文件夾下有那些子文件夾或文件,也就是要讀取為其分配的簇空間,從簇空間中讀取下一級子目錄或文件的目錄項 。
文件夾的目錄項與文件目錄項不同的是,它只記錄該文件夾的起始簇,并不記錄它的大小。也就是說,分配給一個文件夾的簇空間到底是多大、是那些簇,只能根據它的FAT表鏈來確定。
然而,文件夾被刪除后,它的FAT鏈也就不存在了,將無法確定一個文件夾的簇空間是一個簇還是多個簇。尤其當一個有多個簇的文件夾,如果它的后續簇不是與起始簇在一次性復制過程中連續分配的,而是在長時間使用過程中逐漸想問加你家中添加內容導致起始簇的空間不夠使用而追加分配的,這種情況下后續簇與起始簇一定不是相鄰的。
如果只是根據目錄項中提供了起始簇好讀取該簇中目錄項,就會丟失后續簇中存儲的所有文件目錄項指向的文件以及文件夾目錄項指向的各個子目錄,同時各個子目錄以下的所有內容都將會丟失。
一款較好的數據恢復軟件應該能夠對某些特征值進行判斷以確定這些內容是否可能是目錄項,且又無父目錄項指向這個位置,就將該位置作為一個“孤目錄”看待,單獨為其建立一個目錄樹,并向下遍歷它的下級子目錄及文件。 |