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:

OptionBeschreibung
-hMenschenlesbare Ausgabe (K, M, G)
-sNur Gesamtsumme anzeigen
-aAuch einzelne Dateien auflisten
-cGesamtsumme am Ende hinzufügen
--max-depth=NTiefe 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.

Verwandte Artikel