du – Verzeichnis -und Dateigrösse unter Linux anzeigen

Unter Linux lassen sich Dateien mit dem Befehl „du“ (disk usage) auf ihre Grösse untersuchen und mit einer Handvoll Optionen wird sogar der tägliche Kampf eines Linux Administrators erträglicher.

Der Aufruf von du ohne Option, gefolgt von einer Datei oder einem Verzeichnis.
Die Grösse wird dabei in Blocksize angezeigt.

du /home/schurter
2066440 /home/dschurter

Mit der Option -b wird das Ergebnis als Byte angezeigt.

du -b /home/schurter
2113386772 /home/dschurter

Die Option -sh formatiert die Grösse in eine, für Menschen bessere lesbare Form.
Die Darstellung der einzelnen Grössenordnungen reichen von: K (Kilobyte), M (Megabyte) und G (Gigabyte)
In diesem Fall beträgt die Gesamtgrösse 2 GB.

du -sh /home/schurter
2.0G /home/dschurter

-ch als Option zeigt alle Files in einem Verzeichnis und dessen Grösse an.

du -ch /home/dschurter
2.9M /home/dschurter/xxx
4.0K /home/dschurter/yyy/xxx10
20K /home/dschurter/yyy/xxx11
84K /home/dschurter/yyy/xxx20
120K /home/dschurter/yyy/xxx21
20K /home/dschurter/zzz/aaa1
4.0K /home/dschurter/zzz/aaa2
8.0K /home/dschurter/zzz/aaa3
32K /home/dschurter/zzz/aaa4
...
...
...
2.0G insgesamt

Mit einem Wildcard (*) lassen sich Teile einer Abfrage darstellen.

du -ch /home/dschurter/yyy/*
4.0K /home/dschurter/yyy/xxx10
20K /home/dschurter/yyy/xxx11
84K /home/dschurter/yyy/xxx20
120K /home/dschurter/yyy/xxx21
228K /home/dschurter/yyy

du -ch /home/dschurter/yyy/xxx1*
4.0K /home/dschurter/yyy/xxx10
20K /home/dschurter/yyy/xxx11
24K insgesamt

Nützlich ist auch der exclude Parameter, der mit einem Pattern gefüttert werden kann. Dieser Pattern wird dann bei der Suche nicht mitberücksichtigt.

du -ch --exclude='xxx11' /home/dschurter
2.9M /home/dschurter/xxx
4.0K /home/dschurter/yyy/xxx10
20K /home/dschurter/yyy/xxx11 //Dieses File wird bei der Suche nicht mitberücksichtigt.
84K /home/dschurter/yyy/xxx20
120K /home/dschurter/yyy/xxx21
20K /home/dschurter/zzz/aaa1
4.0K /home/dschurter/zzz/aaa2
8.0K /home/dschurter/zzz/aaa3
32K /home/dschurter/zzz/aaa4
...
...
...
2.0G insgesamt

Es gibt noch weitere Optionen für „du“, welche hier nachgeschlagen werden können.

8 thoughts on “du – Verzeichnis -und Dateigrösse unter Linux anzeigen

  1. Hallo,

    danke, es funktioniert!

    Aber eine Frage hätte ich dennoch: Was hat es zu bedeuten, wenn bei dieser Abfrage ein »negativer Wert« als Ergebnis kommt, also z. B.:

    -1637214377 bytes

    Danke und Grüße
    Michi

  2. Hi Michael

    Bekommst du die negativ Werte bei du -b? Wie sieht es mit anderen Optionen aus, Bspw. du -h?
    Sind die Werte auch bei den einzelnen Dateien negativ, oder nur im Total?

    Mögliche Ursachen:
    du kommt mit der Datei/Verzeichnisgrösse nicht zurecht (Überlauf/defektes Dateisystem)
    – Unbekanntes Filesystem (alte du Version?)
    – Virtuelle Maschine (sehr selten)

    Gruss,
    Dani

  3. Hallo Daniel,
    herzlichen Dank für die prompte Antwort!

    Folgendes konnte ich nun testen:

    Das beschriebene Verhalten zeigt sich bisher nur bei »du« im Rahmen von DSL (letzte Version 4.4.10 aus dem Jahr 2008) – und dies auch nur dann, wenn ich »du« nicht aus der Konsole heraus aufrufe, sondern über das Plugin von emelFM.

    In der Konsole funkioniert es, allerdings existieren in der Version nicht die Operatoren -b oder -h und auch nicht –version. Dies deutet hoffentlich, wie von dir beschrieben, auf eine veraltete Version hin…?!

    Bei der aktuellen Version von Mageia werden in »du« die Werte »normal« angezeigt.

    Aber meine große Angst:
    Bei jener Festplatte, welche es zu sichern/migrieren gilt, handelt es sich um eine aus einem durch Spannungsspitzen zerstörten WIN-PC. Es war nicht die hauptsächlich betroffene System-Platte, aber dennoch scheint das Dateisystem angegriffen. Und, was mir noch nie untergekommen ist:

    Das Dateisystem von drei neu aufgesetzten Rechnern konnte ich bisher durch das Kopieren dieser Daten komplett zerstören. Die Migration funktioniert vorerst, nach einigen Stunden sind die ersten Ordner nicht mehr lesbar, wenige Minuten später werden die Platten nicht mehr vom System erkannt. Weder unter WIN, noch unter LINUX.

    Daher war meine neueste Idee, bei der Migration den »Umweg« über LINUX zu gehen, da hier das Dateisystem anders organisiert ist. Aber offensichtlich wird durch die Einbindung von WIN-Partitionen diese Idee zwecklos, wie ich bereits erkennen durfte…

    Im Netz habe ich nun auf einer Seite überflogen, dass ein Minus vor einem Wert bei »du« auf ein korruptes Dateisystem hindeuten könnte. Und wie von dir vermutet/nachgefragt, kommen diese negativen Werte nicht bei einzelnen Dateien, sondern nur bei Ordnern vor.

    Wüsste ich nun, dass diese Annahme richtig wäre, dann würde ich einfach jene Ordner vergessen, bei denen sich dieses »Minus-Verhalten« zeigte – und meine Frau würde nur über etwa 15-20% verlorene Daten weinen müssen. Dafür aber hätte sie einen funktionierenden Rechner.
    (Ich bitte um Entschuldigung für diese unselige Konjunktiv-Ansammlung 🙂

    Danke für Deine Bemühungen und freundliche Grüße aus Wien
    Michi

  4. Hi Michi

    Wenn lediglich die Bootsektoren einer Festplatte defekt sind, ist die Datensicherung über ein Fremdsystem eine gute Option. In deinem Fall scheinen durch die Spannungsspitze aber auch Daten auf der Festplatten beschädigt worden zu sein. Du kannst deine komplette Festplatte mittels dd oder einem anderen Block basiertem Kopiertool, wie gddrescue auf eine funktionstüchtige Festplatte übertragen.

    Wenn die Daten komplett sind, dann sollten sich diese wieder über eine Rescue CD (z.B. KNOPPIX) auslesen und kopieren lassen.

    Gruss,
    Dani

    Info: Die Festplatte kannst du z.B. mit S.M.A.R.T auf mögliche Fehler überprüfen

  5. Danke für den Tipp, genau so werde ich es machen (zumindest: versuchen).
    Habe auch schon Lubuntu auf einem Rechner, dort ist die Möglichkeit, solche »Pakete« zu installieren, scheinbar einfacher, als bei anderen Veröffentlichungen…

    Danke und freundliche Grüße
    Michi

  6. Hallo Daniel,

    danke für deine Hilfe, es hat (durchaus flott) funktioniert!

    Seltsam allerdings, dass kein Linux (DSL, KNOPPIX, Mageja, Lubuntu) mit den entstandenen Images etwas anfangen konnte. Alle berichteten übereinstimmend, die Datei wäre keine Image-Datei.

    Aber probieren half in diesem Fall weiter: WIN2000 hat die durch ddrescue entstandenen Images anstandslos erkannt und fehlerfrei auf die neue Platte kopiert.

    Danke und liebe Grüße
    Michi

  7. Guten Abend Daniel Schurter

    Ihre Seite hat mir schon oft weiter geholfen, wie gerade jetzt! Vielen Dank!

    Die Aussage „Gott ist tot“ machte mich … vielleicht haben Sie entsprechende Erfahrungen gemacht.
    Ich hoffe, dass Sie eines Tages zur Erkentnis kommen das es Ihn gibt. Man kann Ihn nicht mit dem Verstand erfassen und in keiner Religion finden.
    Freundlicher Gruss Stefan Hagen

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht.