NTFS:什麼是檔案?

NTFS:什麼是檔案?

今天,我發現主文件表本身就是一個文件。但是,我猜該文件沒有路徑,您無法打開、刪除或修改它。那如果這是一個文件,也許分區也是文件? NTFS 檔案的定義是什麼?

答案1

通往MFT的路徑是\$Mft-鏡子是\$MftMirr。 Windows 會阻止您在執行時間列出、開啟或修改它們,但如果您在某些工具(例如 EnCase)下檢視卷,它們是可見的。

NTFS 文件將它們稱為“元檔案對Windows來說,它們的名字並不重要,重要的是它們在文件表中佔據的位置(即$Mft磁碟上的1號文件)——這是有道理的,因為Windows無法在沒有元文件內容的情況下透過名稱來定位文件,所以NTFS API 深處可能有一種僅透過文件編號存取文件的方法(有點像在 Linux 中透過「inode」編號而不是名稱開啟文件)。

答案2

但是,我猜該文件沒有路徑,您無法打開、刪除或修改它。

您可以呼叫 ReadFile() 並為其指定檔名$MFT。氧

NTFS 檔案的定義是什麼?

從技術上講,是比特流。因此磁碟上的所有內容(包括開機磁區)都是文件。但分區並不是真正的文件。您實際上並不是打開分區本身,而是打開分區中的檔案。

我在這裡引用微軟的話:

所有檔案系統數據,包括系統引導程式碼和目錄,都由 NTFS 檔案系統儲存在檔案中。

http://msdn.microsoft.com/en-us/library/windows/desktop/aa364056(v=vs.85).aspx

答案3

下面是一個非常簡單的視圖,因為 NTFS 已透過日誌等進行了擴展。

分割區是表中定義要用於磁碟區的磁碟區域的條目。它們是存在的資料結構外部檔案系統,BIOS 和作業系統使用它來建構磁碟上的儲存方式。

NTFS 卷NTFS 檔案系統的核心包含一個主檔案表。它是作業系統開啟並用於建立儲存並儲存有關該磁碟區包含的檔案的元資料的檔案。磁碟上的每個檔案在主檔案表中都有一個記錄條目,如果足夠小,則完全存在於 MFT 中。

較大的文件是文件記錄條目指向的範圍。

目錄是包含有關文件記錄條目的索引資訊的文件,如果足夠小,也完全位於 MFT 內。

由於小檔案可能完全存在於MFT中,且磁碟區中可能存在許多檔案和目錄,因此MFT也可能被分段以增加其儲存空間(不像FAT那樣僅限於某個預設區域)。

相關內容