NTFS: Was ist eine Datei?

NTFS: Was ist eine Datei?

Heute habe ich entdeckt, dassDie Master File Table ist selbst eine Datei. Ich vermute jedoch, dass diese Datei keinen Pfad hat und Sie sie nicht öffnen, löschen oder ändern können. Wenn es sich also um eine Datei handelt, sind Partitionen vielleicht auch Dateien? Was definiert eine NTFS-Datei?

Antwort1

Der Pfad zur MFT lautet \$Mft– der Spiegel ist \$MftMirr. Windows verhindert, dass Sie sie während der Ausführung auflisten, öffnen oder ändern, sie sind jedoch sichtbar, wenn Sie sich das Volume unter einigen Tools (z. B. EnCase) ansehen.

In der NTFS-Dokumentation werden sie als „Metadateien." Ihre Namen sind für Windows weniger wichtig als die Position, die sie in der Dateitabelle einnehmen (d. h. ob es sich $Mftum Datei Nr. 1 auf der Festplatte handelt) – was sinnvoll ist, da Windows Dateien ohne den Inhalt der Metadateien nicht anhand ihres Namens finden kann. Daher gibt es wahrscheinlich tief in der NTFS-API eine Möglichkeit, auf Dateien nur anhand ihrer Dateinummer zuzugreifen (ähnlich wie das Öffnen einer Datei in Linux anhand der „Inode“-Nummer statt des Namens).

Antwort2

Ich vermute jedoch, dass diese Datei keinen Pfad hat und Sie sie nicht öffnen, löschen oder ändern können.

Sie können ReadFile() aufrufen und ihm den Dateinamen geben$MFT. Ö

Was definiert eine NTFS-Datei?

Technisch gesehen ein Strom von Bits. Alles auf einer Festplatte, einschließlich des Bootsektors, ist also einDatei. Eine Partition ist jedoch nicht wirklich eine Datei. Sie öffnen nicht wirklich eine Partition an sich, sondern eine Datei in der Partition.

Ich zitiere hier Microsoft:

Alle Dateisystemdaten, einschließlich des System-Bootstrapcodes und der Verzeichnisse, werden vom NTFS-Dateisystem in Dateien gespeichert.

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

Antwort3

Nachfolgend finden Sie eine sehr vereinfachte Ansicht, da NTFS um Journaling usw. erweitert wurde.

Partitionensind Einträge in einer Tabelle, die Bereiche der Festplatte definieren, die für Volumes verwendet werden sollen. Es sind Datenstrukturen, diedraußendas Dateisystem und werden vom BIOS und dem Betriebssystem verwendet, um die Speicherung von Dingen auf der Festplatte zu strukturieren.

NTFS-Volumesenthalten eine Master File Table im Kern des NTFS-Dateisystems. Es handelt sich um eine Datei, die das Betriebssystem öffnet und verwendet, um den Speicher zu strukturieren und Metadaten zu den auf dem Datenträger enthaltenen Dateien zu speichern. Jede Datei auf der Festplatte hat einen Datensatzeintrag in der Master File Table und befindet sich, wenn sie klein genug ist, vollständig innerhalb der MFT.

Größere Dateien sind Extents, auf die der Dateidatensatzeintrag verweist.

Verzeichnisse sind Dateien, die Indexinformationen zu Dateidatensätzen enthalten und, sofern sie klein genug sind, auch vollständig innerhalb der MFT liegen.

Aufgrund der Tatsache, dass kleine Dateien vollständig in der MFT gespeichert sein können und das Volume viele Dateien und Verzeichnisse enthalten kann, kann die MFT auch fragmentiert werden, um den Speicherplatz zu vergrößern (im Gegensatz zu FAT, das auf einen bestimmten voreingestellten Bereich beschränkt war).

verwandte Informationen