Speichert Windows geheime Daten im NTFS?
Auf dieser Seite erkläre ich, warum Windows einige Gigabytes vom Speicherplatz versteckt.
Windows belegt auffällig viel Platz
Die Installations-Datenträger von Windows 10/11 sind ungefähr 5 GB groß. Wer die übliche Kompressionsrate gängiger Software kennt, würde von einem frisch installierten Windows erwarten, dass es etwa 10 GB1 belegt. So war das bei den ersten Windows 10 Versionen auch tatsächlich. Aber die Versionen von 2025 belegen mindestens 16 GB1. Was stellt Windows mit dem Speicherplatz an?
- Zusätzlich legt Windows für den Ruhezustand und Schnellstart eine Datei namens hiberfil.sys an, die so groß wie das RAM des Computers ist. Man kann sie mit dem Befehl powercfg /hibernate off deaktivieren.
Schwierige Analyse
Da der Explorer die Größe von Verzeichnissen nicht korrekt anzeigen kann, wich ich auf andere Programme aus. Eins davon war WinDirStat, welches eine sehr schöne grafische Übersicht anzeigt. Doch auch in dessen Ausgabe fehlten schätzungsweise 6 GB. Durch Analyse des Inhaltsverzeichnisses war nicht heraus zu bekommen, welche Dateien die vermissten 6 GB belegen.
Mir fiel auf, das der Befehl chkdsk viel mehr freien Platz meldete, als der Explorer:
Dadurch kam ich auf folgende Idee:
Ein riskanter Test
Ich habe unter Windows so viele Dateien angelegt, wie es maximal zulässt. Schließlich zeigte der Explorer ungefähr 0 Bytes frei an. Danach habe ich Linux gestartet, womit ich ohne Tricks weitere 6 GB hinzufügen konnte. Es schien also so, als ob die 6 GB doch frei sind.
⚠️ Aber danach konnte Windows nicht mehr starten! Auch nicht, nachdem ich den Platz wieder frei machte.
Online hatte ich zunächst keine vernünftige Erklärung für das Verhalten gefunden. Daher drängte sich mir der Verdacht auf, Windows würde eine Menge geheimer Dateien ablegen, ohne sie ins Inhaltsverzeichnis einzutragen. Das wäre ein Skandal gewesen. Ist es aber nicht.
Der wahre Grund
Windows reserviert unmittelbar nach der Installation 6-7 GB Speicherplatz,
um sicher zu stellen, dass es vernünftig funktioniert.
In den Windows Einstellungen wird es gut versteckt angezeigt.
Ich zeige mal den Weg dorthin:
Darunter ist ein Link zur offiziellen Erklärung. Mit dem richtigen Begriff "reserved storage" findet man viele weitere Erklärungen.
Weitere Erkenntnisse
Bei meinen Untersuchungen habe ich folgendes heraus gefunden:
- Windows erlaubt normalen Benutzern nicht, den reservierten Speicher zu beschreiben. Schreibvorgänge brechen ggf. mit der Meldung "disk full" ab.
- Die reservierte Größe ändert sich im Laufe der Zeit.
- Diese Funktion wurde mit Windows 10 Version 1903 eingeführt. Computer, die mit einer älteren Windows Version installiert (und danach aktualisiert) wurden, haben keinen reservierten Speicher.
- Wenn man Windows auf ein ganz kleines Speichermedium mit nur 16 oder 20 GB Kapazität installiert, wird ebenfalls kein Speicher reserviert.
- Ohne Reservierung sind 2,5 GB freier Speicher nötig, damit Windows funktioniert. Künftige Updates können aber mehr benötigen.
- Die Erklärungen von Microsoft suggerieren zum Teil einen festgelegten Bereich auf dem Speichermedium. Ich bin aber ziemlich sicher, dass das nicht der Fall ist. Am NTFS Dateisystem wurde nichts relevantes verändert. Es geht nur darum, ein paar Gigabytes frei zu halten, egal an welcher Position.
- ⚠️ Wenn man den reservierten Platz mit Linux beschreibt, muss man ihn unbedingt vor dem nächsten Windows Start wieder frei geben, sonst geht Windows irreparabel kaputt!
- Der Explorer zeigt die Belegung des Speichermediums nicht korrekt an. Gründe dafür sind:
- Hard Links führen zu duplizierten Einträgen auf den selben Speicherplatz.
- Man kann nicht alle Verzeichnisse einsehen. Zum Beispiel beschränkt
Windows den Zugriff auf
- C:\System Volume Information, wo alte Versionen von aktualisierten Dateien liegen, damit man Updates rückgängig machen kann.
- C:\Programme\WindowsApps, wo der Microsoft-Store seine Dateien sammelt.
- Das Inhaltsverzeichnis selbst und die Zugriffsrechte belegen Platz, die der Dateimanager nicht anzeigen kann. Der Befehl chkdsk zeigt deren Größe als "Vom System benutzt" an.
- Ein Gigabyte ist in manchen Programmen 1024·1024·1024 Bytes, in anderen jedoch 1000·1000·1000 Bytes. Das erschwert den Zahlenvergleich.