La Master File Table (nota in sigla come MFT) è probabilmente la più importante delle chiavi (metadati) che definiscono un volume NTFS.

Il Master File Table o MFT è il luogo in cui sono registrate le informazioni su ogni file e directory di un volume formattato come NTFS. La MFT è, in sostanza, un database relazionale, contenente vari attributi relativi ai vari file. Agisce come "punto di partenza" e funziona come il gestore centrale di un volume NTFS, una sorta di "tavola dei contenuti" per il volume. È analogo al "File Allocation Table" dei files in una partizione FAT, ma è molto più di un semplice elenco dei cluster usati e disponibili.

I primi 16 records dell'MFT sono sempre riservati per i metadati del volume stesso.

In informatica, la Tabella file master (MFT Master File Table) è un componente del file system NTFS di Microsoft.

Elemento principale di una partizione NTFS, questo è il primo file su di esso (il suo nome esatto è "$MFT"), contiene un elenco di tutti i file memorizzati su disco. Questo elenco viene memorizzato in forma di una serie di registrazioni, alla maniera di un database. Quando un file viene eliminato, il record che descrive è contrassegnato come libero, può quindi essere riutilizzato quando si crea un nuovo file, ma non sarà rilasciato dal disco. Pertanto, il file MFT continua a crescere come e quando l'utilizzo del disco.

MFT (in combinazione con il file $Bitmap, vedere sotto) sostituisce l'attuale sistema DIR su file system FAT vecchio MS-DOS (FAT12, FAT16 o FAT32). C'è un record nella MFT per ogni file sul disco, troviamo le seguenti informazioni:

    Nome lungo del file.
    Nome in formato 8.3.
    Index (numero del file).
    Dimensioni dei file.
    Data e ora di creazione / modifica / accesso.
    Gli attributi del file.
    I diritti di accesso (vedi Access Control List)
    Elenco dei blocchi (cluster) contenente il file.

Nel caso di file di piccole dimensioni (da 700 a 800 byte, a seconda della lunghezza del nome), sono direttamente memorizzati nella MFT piuttosto che un settore del disco, utilizzando il segnaposto per la lista dei blocchi. Questo limita la perdita di spazio su disco per file di piccole dimensioni.

Un blocco del disco di 4 KB contiene 4 record MFT.

C'è una copia della MFT per consentire il ripristino di una partizione di cui MFT è danneggiato (il nome del file è "$MFTMirr").

La MFT è usata in coordinamento con il file $Bitmap che contiene indicatori di occupazione di ogni blocco della partizione.

IL FILE $BitMAP: $BitMap è un file speciale contenuto all'interno di NTFS. Questo file tiene traccia di tutti cluster usati e non, all'interno del volume formattato con NTFS. Quando un file occupa spazio nel volume NTFS la posizione occupata (in termini di spazio non di coordinate) è segnata all'interno di questo file. Il metodo utilizzato da $BitMap per tenere traccia dei cluster allocati da un file è molto semplice. Ciascun bit all'interno del file $BitMap rappresenta un cluster. Se il bit ha valore "1" allore il cluster è in uso. Esempio: se un byte nel BitMap è segnato "F" (hex), significa che 4 cluster sono in uso F(hex) = 1111 binario.

Quando un file è eliminato il/i cluster ritornano non-allocati e di conseguenza il/i bit corrispondenti ritornano a valore "0". Se per esempio abbiamo 8 cluster consecutivi occupati da diversi files, FF, e uno di questi files, che occupava solo un cluster, viene eliminato, il file $BitMap si aggiornerà da FF a 7F che corrisponderà al valore binario 1111111.