Zu Befehl

Mein rechter, rechter Platz ist frei – df, du

Mit einem schnellen Internetzugang steigt bei vielen Anwendern die Download-Rate und damit zwangsläufig der Speicherverbrauch auf der eigenen Harddisk. Auch auf der Kommandozeile gibt es Programme, mit denen Sie Ihren Festplattenplatz schnell und sicher verwalten können. In dieser "Zu Befehl"-Folge geht es um Dateisysteme, um Dateien und ihre Anordnung und Eigenschaften – und um die Programme df und du. Begeben Sie sich in die Tiefen des Filesystems und finden Sie heraus, welche Dateien den Speicher vertilgen!

Unter einem Dateisystem ganz allgemein können Sie sich die Organisation von Dateien und Verzeichnissen auf einem physikalischen Gerät, z. B. Festplatte, CD-ROM oder Diskette, vorstellen. Schauen Sie sich die Struktur Ihres Linux-Systems an: Ausgehend vom Wurzelverzeichnis / (Schrägstrich – nicht zu verwechseln mit /root, dem Homeverzeichnis des Users root) gibt es Unterverzeichnisse wie /etc oder /home, die wiederum darunterliegende Verzeichnisse haben usw. Der Begriff "Dateisystem" taucht auch in einem anderen Zusammenhang auf: wenn es um einen bestimmten Typ von Dateisystem geht. Das Standarddateisystem unter Linux heißt beispielsweise ext2 (steht für "extended filesystem, Version 2"), ab Windows 95 gibt es vfat, ntfs ermöglicht Lesezugriff auf Windows NT-Partitionen, usw.

No space left on device?

Jetzt sind Sie gefragt: Tippen Sie einfach mal df (steht für "disk free"), um mehr über die Auslastung Ihres Systems zu erfahren:

huhn@asteroid:~$ df
 Filesystem           1k-blocks      Used Available Use% Mounted on
 /dev/hda2                46664     31348     12907  71% /
 /dev/hda5               280005     57209    208340  22% /var
 /dev/hda6              3937220   1499304   2237912  40% /usr
 /dev/hda7              5866360    367476   5200880   7% /opt
 /dev/hda8             19283304   6432372  11871372  35% /home
 /dev/hdb1               521808    521784        24 100% /mnt/c
 /dev/hdb5              5756032   5700228     55804  99% /mnt/d

In dieser Tabelle sehen Sie viele verschiedene Informationen auf einen Blick: /dev/hda2 ist z. B. der Name einer Partition, weiterhin sehen Sie, wie groß die Partition ist und wieviele Blöckedavon benutzt oder noch frei sind. Dahinter kommt eine Prozent-Angabe, wieviel im Verhältnis zum gesamten Platz benutzt ist, und als letzte Information der Ort, wohin das Dateisystem gemountetist. Wenn Ihnen die Darstellung in 1 kB-Blöcken zu unübersichtlich ist, probieren Sie die Option df -h (für --human-readable). Dabei wird auf- oder abgerundet in die nächstliegende Einheit: 46664 kB werden also als 46M ausgegeben oder 3937220 kB als 3.8G. Der Nachteil an dieser Variante: die Zeilen sind in unterschiedlichen Einheiten dargestellt – durch das Runden werden die Angaben ungenauer. Natürlich können Sie auch selbst entscheiden, ob die Belegung in kB oder MB angezeigt werden soll: df -k (für --kilobytes) oder df -m (für --megabytes).

Abbildung 1: Grafisches df unter GNOME – gdiskfree
Abbildung 2: Grafisches df bei KDE – kdf

Viele von den mitgelieferten Optionen des Kommandos df werden Sie nicht für den Alltag am Linux-Rechner benötigen. Dazu gehören df -a (steht für --all), womit auch "Pseudo"-Filesysteme dargestellt werden wie die Prozessinformationen unter /proc, oder df -l (Langform: --local), womit aus dem Netz gemountete Dateisysteme bei der Anzeige weggelassen werden.

Das Ei-node des Kolumbus…

Es kommt vor, dass die Meldung "No space left on device" angezeigt wird, aber keineswegs eine hundertprozentige Auslastung des Dateisystems erreicht ist. Um diesem Rätsel auf die Spur zu kommen, sollten Sie einiges über die internen Organisation von Unix-Dateisystemen wissen. Eine Datei hat im wesentlichen zwei Eigenschaften: Sie belegt Platz im Dateisystem (physikalischer Speicher), und sie hat mindestens einen Namen. Verzeichnisse sind streng genommen Dateien, die Links zu anderen Dateien oder Verzeichnissen enthalten. Der Eintrag einer Datei im Verzeichnis besteht aus einem Namen und einer sogenannten "Knotennummer" – der i-node.

Jedes Dateisytem besitzt ein Inhaltsverzeichnis, in dem alle enthaltenen Dateien verzeichnet sind. Die Einträge, i-nodes genannt, enthalten Informationen über Dateien. In diesen Informationsknoten werden in 128 Bytes alle Verwaltungsinformationen der Files (mit Ausnahme des Dateinamens) gespeichert:

  • Typ und Zugriffsrechte (normale Datei, Verzeichnis, Gerätedatei, Symlink, lesen, schreiben, ausführen)
  • Referenzzähler (Anzahl der Namen, die auf die Datei zeigen; man kann dieselbe physikalische Datei mit mehreren Namen versehen – Hardlink)
  • Dateieigentümer und Gruppenzugehörigkeit
  • Größe in Bytes
  • Erstellungsdatum
  • Modifikationsdatum
  • Datum des letzten Zugriffs
  • Zeiger auf den physikalischen Datenbereich

Die Auslastung dieses "Inhaltsverzeichnisses", der i-node Liste, erhalten Sie mit df -i:

huhn@asteroid:~$ df -i
 Filesystem            Inodes   IUsed   IFree IUse% Mounted on
 /dev/hda2              12048    7333    4715   61% /
 /dev/hda5              72288    6314   65974    9% /var
 /dev/hda6             500960  131580  369380   26% /usr
 /dev/hda7             746304      11  746293    0% /opt
 /dev/hda8            2452800   14423 2438377    1% /home
 /dev/hdb1                  0       0       0    -  /mnt/c
 /dev/hdb5                  0       0       0    -  /mnt/d

Die Größe des Inhaltsverzeichnisses wird beim Erstellen des Dateisystems festgelegt, dieses Verzeichnis kann also "überlaufen", obwohl noch Platz da ist – wenn man viele kleine Dateien hat, wie z. B. News-Artikel. Wenn Sie also wissen, dass viele kleine Dateien oder symbolische Links angelegt werden sollen, können Sie eine größere i-node-Dichte wählen.

LinuxCommunity kaufen

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

Deutschland

Ähnliche Artikel

  • Zu Befehl: df, du
    Programme wie df ("disk free") und du ("disk usage") geben Auskunft über die Auslastung des Dateisystems. Dabei verrät df, wieviel Platz auf den Partitionen verfügbar ist, und du gibt an, wieviele Blöcke tatsächlich belegt sind. Wir zeigen, wie Sie mit diesen beiden Tools "Speicherfressern" auf die Schliche kommen.
  • Zu Befehl: pwd, cd, pushd, popd und dirs
    Die Wege im Verzeichnisdschungel sind unergründlich. Wie Sie auf dem rechten Pfad bleiben und welche Kommandos bei der Navigation helfen, zeigt diese "Zu Befehl"-Folge.
  • Zu Befehl
    In der letzten "Zu Befehl"-Folge haben Sie erste Informationen zu Partitionen, Dateisystemen und deren Auslastung bekommen. In diesem Zusammenhang fiel auch kurz der Begriff "mounten". Mit dem Befehl mount machen Sie einen Datenträger (z. B. Festplatte, Diskette, CD usw.) für Linux verfügbar. Anders als unter DOS und Windows gibt es unter Unix/Linux keine Laufwerksbuchtaben, vielmehr wird jede Partition irgendwo unterhalb des sogenannten Root-Verzeichnisses (Wurzelverzeichnis) eingebunden. In diesem Artikel geht es um Tipps und Tricks zu mount, die den Zugriff auf Datenträger erleichtern und in einigen Fällen sogar helfen, Geld zu sparen.
  • Zu Befehl: Suchen mit grep, egrep, fgrep, (b)zgrep
    Für die Suche nach Wörtern und Ausdrücken in Textdateien bieten sich die Kommandos der grep-Familie an. Als Ergebnis zeigen sie wahlweise die gefundenen Zeilen, die Namen der Dateien, in denen das Suchmuster vorkommt, oder die Anzahl der Treffer an.
  • Alle meine Klone
    Dass Datensicherungen weder zeitaufwändig noch umständlich sein müssen, zeigt Mondo: Das genial einfache Werkzeug sichert Ihre komplette Festplatte oder einzelne Verzeichnisse.
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

Huawei
Pit Hampelmann, 13.12.2017 11:35, 1 Antworten
Welches Smartphone ist für euch momentan das beste? Sehe ja die Huawei gerade ganz weit vorne. Bi...
Fernstudium Informatik
Joe Cole, 12.12.2017 10:36, 2 Antworten
Hallo! habe früher als ich 13 Jahre angefangen mit HTML und später Java zu programmieren. Weit...
Installation Linux mint auf stick
Reiner Schulz, 10.12.2017 17:34, 3 Antworten
Hallo, ich hab ein ISO-image mit Linux Mint auf einem Stick untergebracht Jetzt kann ich auch...
Canon Maxify 2750 oder ähnlicher Drucker
Hannes Richert, 05.12.2017 20:14, 4 Antworten
Hallo, leider hat Canon mich weiterverwiesen, weil sie Linux nicht supporten.. deshalb hier die...
Ubuntu Server
Steffen Seidler, 05.12.2017 12:10, 1 Antworten
Hallo! Hat jemand eine gute Anleitung für mich, wie ich Ubuntu Server einrichte? Habe bisher...