Der Befehl du (disk usage) zeigt den Speicherverbrauch von Dateien und Verzeichnissen an. Er ist unverzichtbar, wenn du herausfinden willst, welche Verzeichnisse am meisten Platz auf deiner Festplatte belegen.
Syntax des du-Befehls
du [OPTIONEN] [DATEI]...
OPTIONEN- Flags, die das Verhalten und die Ausgabe steuern.DATEI- Eine oder mehrere Dateien oder Verzeichnisse. Ohne Angabe wird das aktuelle Arbeitsverzeichnis verwendet.
Grundlegende Verwendung
Ohne Optionen zeigt du den Speicherverbrauch in Kilobytes für das angegebene Verzeichnis und alle Unterverzeichnisse:
du ~/Dokumente
Die Ausgabe listet jedes Unterverzeichnis mit seinem Speicherverbrauch auf. Die letzte Zeile zeigt die Gesamtsumme des angegebenen Verzeichnisses.
Du kannst auch mehrere Verzeichnisse gleichzeitig angeben:
du ~/Dokumente ~/Bilder ~/Downloads
Menschenlesbare Ausgabe
Die Option -h (human-readable) formatiert die Größenangaben mit Einheiten wie K, M oder G:
du -h ~/Dokumente
Die Ausgabe sieht dann beispielsweise so aus:
4.0K /home/user/Dokumente/Notizen
12M /home/user/Dokumente/Projekte
156M /home/user/Dokumente
Nur die Gesamtgröße anzeigen
Mit der Option -s (summarize) erhältst du nur die Gesamtgröße, ohne die einzelnen Unterverzeichnisse aufzulisten:
du -sh ~/Dokumente
Die Kombination -sh ist besonders praktisch, um schnell die Größe eines Verzeichnisses zu prüfen:
156M /home/user/Dokumente
Alle Dateien anzeigen
Standardmäßig listet du nur Verzeichnisse auf. Mit der Option -a werden auch einzelne Dateien angezeigt:
du -ah ~/Dokumente
Das ist hilfreich, wenn du große Einzeldateien identifizieren willst.
Tiefe der Anzeige begrenzen
Die Option --max-depth begrenzt, wie tief du in die Verzeichnisstruktur hinabsteigt:
du -h --max-depth=1 /var
Mit --max-depth=1 siehst du nur die direkten Unterverzeichnisse, nicht deren Inhalte:
205M /var/cache
1.2G /var/log
2.9G /var/lib
4.5G /var
Gesamtsumme für mehrere Verzeichnisse
Die Option -c fügt eine Gesamtsumme am Ende hinzu. Das ist nützlich, wenn du die kombinierte Größe mehrerer Verzeichnisse ermitteln willst:
du -csh ~/Dokumente ~/Downloads
Die Ausgabe zeigt jedes Verzeichnis einzeln und die Summe:
156M /home/user/Dokumente
892M /home/user/Downloads
1.1G insgesamt
Systemverzeichnisse prüfen
Für Verzeichnisse wie /var oder /usr benötigst du Root-Rechte, da viele enthaltene Dateien nur für den Administrator lesbar sind:
sudo du -sh /var/log
Ohne sudo erhältst du Fehlermeldungen für nicht lesbare Verzeichnisse, und die angezeigte Größe ist unvollständig.
Shell-Muster verwenden
Du kannst Shell-Muster (Wildcards) verwenden, um mehrere Verzeichnisse mit einem Befehl zu erfassen:
du -sh ~/D*
Dieser Befehl zeigt die Größe aller Verzeichnisse im Home-Verzeichnis, die mit “D” beginnen:
156M /home/user/Dokumente
892M /home/user/Downloads
1.0G /home/user/Desktop
Kombination mit anderen Befehlen
Der du-Befehl lässt sich mit Pipes und anderen Befehlen kombinieren, um die Ausgabe zu filtern oder zu sortieren.
Die größten Verzeichnisse finden
Um die fünf größten Verzeichnisse innerhalb von /var zu finden, kombiniere du mit sort und head:
sudo du -h /var --max-depth=1 | sort -rh | head -5
Die Option -rh bei sort sortiert numerisch (human-readable) in absteigender Reihenfolge:
4.5G /var
2.9G /var/lib
1.2G /var/log
205M /var/cache
48M /var/backups
Zusammenfassung
Der du-Befehl zeigt den Speicherverbrauch von Dateien und Verzeichnissen. Die wichtigsten Optionen sind:
| Option | Beschreibung |
|---|---|
-h | Menschenlesbare Ausgabe (K, M, G) |
-s | Nur Gesamtsumme anzeigen |
-a | Auch einzelne Dateien auflisten |
-c | Gesamtsumme am Ende hinzufügen |
--max-depth=N | Tiefe der Verzeichnisanzeige begrenzen |
Während du den Platzverbrauch einzelner Verzeichnisse zeigt, liefert der Befehl df einen Überblick über den gesamten Speicherplatz des Dateisystems. Beide Befehle ergänzen sich bei der Analyse des Speicherverbrauchs.