Ordnergrößen in Linux

Die Festplatte wird voller und voller, nur wo befinden sich all diese Dateien und welcher Ordner belegt wie viel Platz? Die Antwort verrät uns das systeminterne du – Disk Usage.

Größe eines bestimmen Ordners

sudo du -sh /var

#Ausgabe 
910M    /var

Durch den Parameter -s (summarize) wird die Größe des gesamten Ordnerns inklusive Unterordner bestimmt, während -h für eine verständliche (human-readable) Ausgabe sorgt.

Um den belegten Platz im aktuellen Ordner anzuzeigen setzen wir am Ende einfach einen Punkt. Die zusätzliche Eingabe von sudo ist eigentlich nur für systemweite Suchen oder Abfragen in geschützten Verzeichnissen notwendig.

sudo du -sh .

Um dem gesamten auf der Festplatte belegten Platz anzuzeigen

sudo du -hs / 

Unterordner

Ergänzen wir obigen Befehl um ein Slash-Sternchen erhalten wir die Größen aller Unterordner. Wer nochmals die Gesamtgröße sehen möchte, verwendet einfach -shc anstelle von nur -sh.

sudo du -sh /var/*

#Ausgabe
812K    /var/backups
143M    /var/cache
354M    /var/lib
4.0K    /var/local
0       /var/lock
415M    /var/log
4.0K    /var/mail
4.0K    /var/opt
0       /var/run
28K     /var/spool
20K     /var/tmp
256K    /var/www

Die größten Verzeichnisse finden

Um etwa die zehn größten Verzeichnisse zu finden, lässt sich die Ausgabe von du sortieren (sort -rh) und per head auf eine gewünschte Anzahl begrenzen. Eine jeweilige Pipe grenzt diese nachfolgenden Bearbeitungen vom eigentlichen du-Befehl ab.

sudo du -h /var/ | sort -rh | head -10

Dateien ausschließen

Möchtest du bestimmte Dateien von der Einberechnung ausschließen hilft der Zusatz –exclude weiter. Für alle ZIP-Dateien wäre dies etwa –exclude=“*.zip“.

sudo du -shc --exclude="*.zip" /var/*

Die wichtigsten Optionen im Überblick

-aPlatzbedarf aller Dateien anzeigen
-c Zeigt am Ende zusätzlich den summierte Platzbedarf der Suche
-h Formatiert die Zahlen anstelle von Kilobyte in besser lesbare Werte wie Megabyte oder Gigabyte
-sSummiert das Ergebnis auf einzelne Ordner
–excludeSchließt bestimmte Dateien aus
–timeEine zusätzliche Spalte mit dem Zeitpunkt der letzten Änderung

Alle weiteren Möglichkeiten findest du mit

du --help