Die Kapazität eines Dateisystems besitzt mindestens zwei Grenzen: Datenblöcke und Metadatenobjekte wie Inodes. df meldet die Zuweisung aus Sicht des Dateisystems, während du erreichbare Pfadnamen durchläuft und die ihnen zugeordnete Belegung summiert. Die Werte beantworten verschiedene Fragen und müssen nicht übereinstimmen.
Das Dateisystem · Lektion 9
Speicherbelegung
Lerne, wie `df` und `du` unterschiedliche Ansichten des Block- und Inode-Verbrauchs eines Dateisystems messen.
Dateisystemkapazität mit `df`
Zeige den Typ eingehängter Dateisysteme und menschenlesbare Blockwerte an:
$ df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 6.2G 2.3G 3.6G 40% /
Size, Used und Avail stammen aus der Dateisystembuchhaltung. Der verfügbare Platz kann wegen reservierter Blöcke, Metadaten, Zuweisungsrichtlinien, Quoten oder Rundung kleiner als Gesamtgröße minus Belegung sein. Führe df mit einem Pfad aus, um das Dateisystem zu melden, das diesen Pfad enthält:
$ df -hT /var/log
Was meldet df in erster Linie?
Inode-Kapazität
Dateisysteme, die Inode-ähnliche Objekte zuweisen, können diese erschöpfen, obwohl noch Blöcke frei sind:
$ df -i /var
Eine große Anzahl kleiner Dateien kann die verfügbaren Inodes verbrauchen. Das Löschen einer großen Datei gibt viele Blöcke, aber im Allgemeinen nur einen Inode frei; das Löschen vieler unnötiger kleiner Dateien kann Inode-Druck verringern. Manche Dateisysteme weisen Metadaten dynamisch zu und melden diese Konzepte anders.
Was kann geschehen, wenn ein Dateisystem freie Blöcke, aber keine freien Inodes besitzt?
Pfadbelegung mit `du`
Fasse den zugewiesenen Speicher zusammen, der unterhalb eines Verzeichnisses erreichbar ist:
$ du -sh /var/log
Vergleiche unmittelbare Untereinträge und bleibe dabei auf einem Dateisystem:
$ sudo du -xhd1 /var | sort -h
Die hier gezeigten GNU-Optionen stehen für menschenlesbare Ausgabe, maximale Tiefe eins und ein einziges Dateisystem. Berechtigungen können Unterbäume verbergen und eine unvollständige Summe erzeugen. du kann außerdem standardmäßig hart verlinkte Dateien nur einmal zählen, scheinbare Größe von zugewiesenen Blöcken unterscheiden und Sparse-Dateien abhängig von den Optionen verschieden behandeln.
Welcher Befehl fasst die zugewiesene Belegung unter /var/log zusammen?
Warum `df` und `du` abweichen
Häufige Ursachen sind:
- Ein Prozess hält eine gelöschte Datei geöffnet; ihre Blöcke bleiben zugewiesen, aber für
duexistiert kein Pfadname mehr. - Dateisystemmetadaten, reservierter Speicher, Journale, Reflinks, Snapshots oder Kompression beeinflussen die Buchhaltung.
- Innerhalb des durchlaufenen Baums ist ein anderes Dateisystem eingehängt.
- Berechtigungen hindern
duam Lesen mancher Verzeichnisse. - Sparse-Dateien besitzen unterschiedliche scheinbare und zugewiesene Größen.
Untersuche gelöschte, aber geöffnete Dateien bei autorisierten Prozessen mit einem Werkzeug wie lsof +L1. Starte den verantwortlichen Dienst über sein normales Verfahren neu oder sende ihm ein passendes Signal, statt unbekannte Deskriptoren zu kürzen.
Warum kann df belegten Platz anzeigen, den das pfadbasierte du nicht findet?
Untersuchen, ohne den Vorfall zu verschlimmern
Beginne beim von df gemeldeten vollen Dateisystem, bestimme sein Einhängeziel mit findmnt und grenze du-Suchen anschließend auf dasselbe Dateisystem ein. Berücksichtige Snapshots, Containerschichten, Protokolle, Paket-Caches und Aufbewahrungsrichtlinien von Anwendungen. Lösche Dateien nicht allein aufgrund ihrer Größe; kläre zuerst Eigentümerschaft, Sicherung, Compliance und Dienstverhalten.
Was ist die sicherste Reaktion auf eine gefundene große Datei?
Lektion abgeschlossen
Sie haben Speicherbelegung abgeschlossen
Du kannst Berichte über Dateisystem- und pfadbasierte Speicherbelegung nun miteinander in Einklang bringen.
Verwende
dffür die Blockkapazität eingehängter Dateisysteme.Verwende
df -ifür Inode-Druck, soweit unterstützt.Verwende begrenzte
du-Durchläufe, um die Belegung erreichbarer Pfade zuzuordnen.Untersuche gelöschte offene Dateien und dateisystemspezifische Buchhaltungsunterschiede.
Wende Eigentums- und Aufbewahrungsrichtlinien an, bevor du Daten löschst.
Lernfortschritt speichern
Erstellen Sie ein kostenloses Konto, um diese Lektion zu speichern und auf jedem Gerät weiterzulernen.
Kostenloses Konto erstellen