Einleitung
Droht einem Linux-Server der freie Festplattenspeicher auszugehen, entscheidet eine zügige Ursachenanalyse über Ausfallzeiten und Systemstabilität. Welche Verzeichnisse explodieren im Umfang? Wo verstecken sich unbemerkt gigantische Log-Dateien? Statt trockene Handbuchseiten zu wälzen, vermittelt dieser praxisnahe Leitfaden anhand anschaulicher Szenarien alle unverzichtbaren Schalter und Kniffe des Linux-Werkzeugs du – vom simplen Einstieg bis zum versierten Sysadmin-Workflow.
1. Testumgebung aufbauen und den Basisbefehl du kennenlernen
Um realistische Bedingungen nachzustellen, erzeugen wir zunächst eine isolierte Verzeichnisstruktur mit Testdateien verschiedener Größen. Dazu dient der Befehl mkdir -p /tmp/du_demo/logs /tmp/du_demo/backup && truncate -s 10M /tmp/du_demo/backup/data.bin && truncate -s 5M /tmp/du_demo/logs/app.log.

Das Dienstprogramm du (Disk Usage) ermittelt die tatsächliche Belegung des Dateisystems für den angegebenen Ordner sowie sämtliche darin enthaltenen Unterverzeichnisse. Standardmäßig rechnet das Tool in 1024-Byte-Blöcken.
Wird der Aufruf ohne zusätzliche Parameter abgesetzt, listet die Shell jeden gefundenen Verzeichnispfad zusammen mit der dazugehörigen Blockanzahl auf.
⚙️ [Die wichtigsten Parameter auf einen Blick]
-h : Bereitet Speicherwerte lesefreundlich mit Einheitenkürzeln wie K, M oder G auf.-a : Bezieht neben Ordnern auch jede eigenständige Datei in die Auswertung ein.-s : Blendet Unterstrukturen komplett aus und liefert ausschließlich die Gesamtsumme.-d : Beschränkt den Scanvorgang strikt auf eine vorgegebene Verzeichnistiefe.-c : Schließt die Auflistung mit einer zusammenfassenden Gesamtbilanz ab.-b : Gibt die nominelle Dateigröße exakt in Bytes an, unabhängig von der tatsächlichen Blockbelegung.

Um die kryptische Angabe roher Speicherblöcke zu umgehen, empfiehlt sich das Flag -h (bzw. --human-readable). Dieses skaliert Zahlenwerte automatisch in leicht verständliche Einheiten wie Kilobyte, Megabyte oder Gigabyte.
Auf diese Weise lässt sich das Datenvolumen einzelner Verzeichnisse sofort auf einen Blick erfassen.

2. Navigation optimieren: Tiefe beschränken und Summen aggregieren (-d, -s, -c)
Um die gezielte Begrenzung der Ordnerebenen praxisnah zu demonstrieren, verschachteln wir die Testumgebung über mehrere Hierarchiestufen und legen eine weitere Datei an mittels mkdir -p /tmp/du_demo/nested/level1/level2 && truncate -s 2M /tmp/du_demo/nested/level1/level2/dummy.bin.

Durch das Anhängen von -d 1 (identisch zu --max-depth=1) wird der Traversierungsprozess bereits nach der unmittelbar folgenden Unterebene gestoppt.
Diese Eingrenzung verhindert unübersichtliche Bildschirmausgaben bei tief verschachtelten Strukturen und verschafft Administratoren sofortige Klarheit über die Speicherverteilung auf oberster Ebene.

Soll der detaillierte Verzeichnisbaum vollständig verborgen bleiben, greift man zu -s (--summarize). Dieser Parameter fasst den Speicherbedarf des gesamten Zielordners in einer einzigen kompakten Zeile zusammen.
Kombiniert mit -h erhält man blitzschnell den Gesamtraumbedarf eines Projektordners.

Ergänzt man die Abfrage um das Argument -c (--total), generiert das Tool am Ende der Auflistung eine zusätzliche Summenzeile namens total.
So lassen sich die Einzelwerte der Unterordner direkt mit dem Gesamtvolumen abgleichen, ohne extern nachrechnen zu müssen.

3. Dateidetails aufschlüsseln und Muster ausschließen (-a, –exclude)
Für das selektive Filtern von Dateitypen erzeugen wir temporäre Beispieldateien über touch /tmp/du_demo/temp1.tmp /tmp/du_demo/temp2.tmp.

Während du von Haus aus Verzeichnisse fokussiert, erzwingt das Flag -a (--all) eine lückenlose Erfassung ausnahmslos aller Einzeldateien.
Gepaart mit der Lesehilfe -h offenbart sich der exakte Platzbedarf jedes Logfiles innerhalb von /tmp/du_demo/logs in übersichtlicher Formatierung.

Mithilfe des Parameters --exclude lassen sich unerwünschte Dateiformate oder Cache-Muster präzise von der Größenberechnung ausnehmen.
Setzt man --exclude='*.tmp' ein, ignoriert das Programm sämtliche flüchtigen .tmp-Dateien und spiegelt den bereinigten Speicherbedarf des Verzeichnisses wider.

4. Administratoren-Workflows: Speicherfresser lokalisieren und absteigend sortieren
Für die abschließende Spurensuche nach den größten Platzfressern simulieren wir signifikante Datenmengen durch truncate -s 50M /tmp/du_demo/backup/big.tar && truncate -s 20M /tmp/du_demo/logs/access.log.

Verknüpft man die Ausgabe von du -h -d 1 /tmp/du_demo über eine Linux-Pipe (|) mit sort -hr, werden die Verzeichnisse der ersten Ebene absteigend nach ihrer Datenmenge sortiert.
Dadurch springt der Hauptverursacher des Speicherengpasses unverzüglich ins Auge.

Eine noch tiefergehende Prüfung ermöglicht die Kombination aus du -ah /tmp/du_demo, der numerischen Sortierung sort -hr sowie dem Begrenzungsbefehl head -n 5.
Diese Kette filtert sekundenschnell die fünf größten speicherintensiven Dateien und Verzeichnisse des gesamten Systems heraus.

Nach Abschluss aller Übungen empfiehlt sich das restlose Bereinigen des Testbereichs mit rm -rf /tmp/du_demo.

Mit diesem Fundus an praxisnahen Schaltern und effizienten Pipeline-Kombinationen steht einer gezielten Speicherplatzverwaltung unter Linux nichts mehr im Wege. Durch den situativen Einsatz der passenden du-Optionen lassen sich drohende Plattenengpässe künftig vorausschauend analysieren und souverän beheben.