AA_dogs_studio-porto-sabbia_123rf_3624672.jpg

© Studio Porto Sabbia, 123rf.com

Programme zum Analysieren der Speicherbelegung

Spürnasen

,
Allzu schnell geht der Platz auf die Festplatte zur Neige. Aber bevor Sie eine neue kaufen, lohnt es, auf dem Datenträger nach den Speicherfressern zu fahnden. Dazu gibt es mehrere Ansätze.

In Zeiten von bezahlbaren Terabyte-Festplatten und dem Einsatz von Cloud Computing scheint stets genügend freier Speicherplatz vorhanden. Falls nicht, reicht der Gang zum nächsten Computermarkt, um eine größere Festplatte zu erwerben und die bestehende zu ergänzen oder ersetzen. Das nachfolgende Einrichten und Benutzen der neuen Festplatte dauert und wäre vielleicht gar nicht notwendig gewesen: Als Alternative käme eine vorherige Recherche nach den Daten, die am meisten Platz belegen, in Frage.

Oft fehlt jedoch das Wissen darüber, wie das System die Daten auf dem Speichermedium ablegt. Der Fokus in diesem Beitrag liegt zunächst auf den Programmen, die sich auf jedem Linux-System befinden. Das dabei erworbene Grundwissen hilft dabei, komplexere graphische Programme anzuwenden und deren Ausgaben korrekt zu deuten.

Alles normal

Das Kommando ls ("list segments") zeigt mit der Option -l die Daten in einem langen, ausführlichen Format an. So sehen Sie unter anderem die Größe der Dateien und der Verzeichnisse in Bytes. Die Option -h beziehungsweise die Langform --human-readable stellen die Zahl in Form von KBytes, MBytes beziehungsweise GBytes dar. Mit der Option -S (--sort=size) sortieren Sie das Ergebnis absteigend nach Dateigröße, sodass die größten Dateien am oberen Ende der Liste stehen. Kombiniert mit der Option -r (--reverse) drehen Sie die Reihenfolge der jeweiligen Sortierung um. Um die Größe von Verzeichnissen zu ermitteln, hilft die Option -R, die rekursiv alle Unterverzeichnisse des angegebenen Verzeichnisses mit einbezieht (Listing 1).

Listing 1

$ ls -lhR test
test:
insgesamt 8,0K
drwxr-xr-x 2 frank frank 4,0K 7. Mär 16:03 nochwas
-rw-r--r-- 1 frank frank 1,5K 7. Mär 16:00 datei1
test/nochwas:
insgesamt 4,0K
-rw-r--r-- 1 frank frank 5 7. Mär 19:03 datei2

Für die Größe eines Verzeichnisses ist nicht nur die Summe der Größe der einzelnen Dateien maßgeblich, sondern zusätzlich die Verschachtelungstiefe und die dafür notwendigen Verwaltungsinformationen im Dateisystem (Index-Nodes oder kurz Inodes). In Listing 1 belegt das Verzeichnis test 12 KByte im Dateisystem – 4 KByte für datei1, 4 KByte für den Verzeichniseintrag des Unterverzeichnisses nochwas und weitere 4 KByte für datei2, die in nochwas liegt. Die feste Größe erklärt sich dadurch, dass das Dateisystem jeden Eintrag in einer festen Anzahl von Blöcken speichert.

Das Unix-Kommando du ("disk usage") zeigt ebenfalls die Informationen an. Es bezieht bei einem Aufruf automatisch alle Unterverzeichnisse mit ein. Dabei ermittelt die Option -s ("summarize") den belegten Platz für jedes angegebene Verzeichnis. Wie bei ls sorgt die Option -h für mehr Lesbarkeit durch Angabe der passenden Größenordnung. Interessiert Sie die Ausgabe der einzelnen Teilsummen, dass heißt, die Größen der Unterverzeichnisse, dann verzichten Sie beim Aufruf von du auf die Option -s.

Im Untergrund

Das Betriebssystem legt die Daten auf einem Datenträger in einem oder mehreren Speicherstücken mit fester Größe ab, sogenannte Disk-Blöcke. Bisher waren diese stets 512 Byte groß, manche Hersteller liefern neue größere Festplatten mit einer Blockgröße von 4096 Byte aus. Wieviel Speicherplatz eine Datei tatsächlich belegt, ermitteln Sie mit dem Kommando ls und der Option -s (--size). In der Ausgabe erscheint am Anfang jeder Zeile eine Spalte mit einem Wert für die Dateigröße. Deren Wert ist das Produkt aus der Größe des Disk-Blocks und der Anzahl belegter Disk-Blöcke. Das erklärt, warum in Zeile 2 von Abbildung 1 die Größenangabe von 476K auftaucht, obwohl die Summe der Dateiengrößen 10 KByte weniger ausmacht: Es handelt sich um die Gesamtsumme des tatsächlich belegten Platzes, bezogen auf die zugeordneten Disk-Blöcke der einzelnen Einträge in den Inodes.

Abbildung 1: Listing mit der Anzahl der belegten Disk-Blöcke.

Das System verwendet den Platz auf dem Speichermedium also nicht nur für Daten in den Files, sondern für auch die Strukturen zum Verwalten von Dateien. In solchen Strukturen stehen zum Beispiel die Namen der Dateien, die Zugriffsrechte und statistischen Werte wie das Datum des Erstellens, der letzten Modifikation und des letzten Zugriffs in einem Eintrag. Das Kommando stat zeigt die Informationen sehr detailliert (Abbildung 2).

Abbildung 2: Das Kommando stat zeigt ausführliche Informationen zu einer Datei.

Neben dem Namen des Eintrags (File:) erfahren Sie, wo und wie die Datei liegt. Das File aus dem Beispiel hat eine Dateigröße von 22791 Byte (Size:) und verteilt sich auf 48 Disk-Blöcke (Blocks:) von jeweils 4096 Byte Umfang (IO Block:). Es handelt sich hier um eine reguläre Datei, möglich wären aber beispielsweise Verzeichnisse, Links (Soft- oder Hardlink), Sockets für Netzwerkverbindungen und Named Pipes zur Interprozesskommunikation.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 12/2017: Perfekte Videos

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

Broadcom Adapter 802.11n nachinstallieren
Thomas Mengel, 31.10.2017 20:06, 2 Antworten
Hallo, kann man nachträglich auf einer Liveversion, MX Linux auf einem USB-Stick, nachträglich...
RUN fsck Manually / Stromausfall
Arno Krug, 29.10.2017 12:51, 1 Antworten
Hallo, nach Absturz des Rechners aufgrund fehlendem Stroms startet Linux nicht mehr wie gewohn...
source.list öffnet sich nicht
sebastian reimann, 27.10.2017 09:32, 2 Antworten
hallo Zusammen Ich habe das problem Das ich meine source.list nicht öffnen kann weiß vlt jemman...
Lieber Linux oder Windows- Betriebssystem?
Sina Kaul, 13.10.2017 16:17, 6 Antworten
Hallo, bis jetzt hatte ich immer nur mit
IT-Kurse
Alice Trader, 26.09.2017 11:35, 2 Antworten
Hallo liebe Community, ich brauche Hilfe und bin sehr verzweifelt. Ih bin noch sehr neu in eure...