Was ist der Speicherplatzaufwand für verschiedene Dateisysteme?

8

Ich habe ein Dateisystem von einem Ubuntu-System auf ein Fedora 17-System gesichert / wiederhergestellt. Mir ist aufgefallen, dass dfder genutzte Platz laut Ausgabe um 30% gestiegen ist. Was könnten die Gründe dafür sein?

Auf dem Fedora-System werden dfangezeigt: 78 GB verwendet

Auf dem Ubuntu-System werden dfangezeigt: 60 GB verwendet

Unterschiede zwischen den Systemen:

Ubuntu: ext3 (erstellt vor Jahren)

Fedora 17: ext4 (erstellt mit einem Vanille- mkfs.ext4Aufruf)

Das Wiederherstellen in einem XFS-Dateisystem (unter Fedora 17) ergibt 78 GB verwendeten Speicherplatz.

Das Sichern und Wiederherstellen erfolgte mit GNU tar. Das Dateisystem enthält eine Vielzahl verschiedener Arten von Dateien (z. B. von Quellbäumen über Maildirs bis hin zu ISO-Dateien usw.).

maxschlepzig
quelle

Antworten:

8

Das erste, was mir in den Sinn kommt, sind "spärliche Dateien". Traditionell könnte man eine Datei mit Daten mit einem Versatz in der Datei erstellen und dann einen viel größeren Versatz anstreben. Beim Schreiben von Daten in den viel größeren Offset würde das Dateisystem keine Plattenblöcke für die dazwischen liegenden Offsets zuweisen. Programme, die diese Offsets ohne zugewiesene Plattenblöcke lesen, lesen Nullwerte.

Das Teern von Dateien mit geringer Dichte führt dazu, dass die Offsets einer Datei mit geringer Dichte, denen keine Plattenblöcke zugewiesen sind, Plattenblöcke zuweisen, sowohl in der TAR-Datei (oder im Ausgabestream) als auch in der neu erstellten Datei.

Ich erinnere mich, dass einige DBMS spärliche Dateien erstellt haben, ebenso wie Programme wie MSC / NASTRAN (Finite-Elemente-Modellierungssystem). Das Sichern dieser spärlichen Dateien erfordert große Mengen an Offline-Speicher, sehr zur Überraschung aller Beteiligten.

Bruce Ediger
quelle
Torrent-Programme haben eine Option, von der ich denke , dass sie bei unvollständigen Downloads dasselbe tun wird. (Zumindest klingt die Beschreibung in Azureus wie das, was Sie beschreiben)
Izkata
Wäre du --apparent-size ...eine Möglichkeit zu testen, ob spärliche Dateien den Unterschied machen?
Maxschlepzig
1
Eine weitere häufige Verwendung für Dateien mit geringer Dichte sind Disk-Images von Virtualisierungssoftware.
Jochen Lutz
4

Eine andere Sache, auf die Sie achten sollten, wenn Sie Speicherplatzdiskrepanzen feststellen, ist der für root reservierte Speicherplatz (normalerweise 5% bei ext {2,3,4}). In diesem Bereich kann das Betriebssystem auch dann funktionieren (Protokolldateien schreiben usw.), wenn ein Benutzer die Festplatte füllt (solange dieser Benutzer nicht root ist).

Sie können diese Einstellung anzeigen mit tune2fs -l:

[root@host ]# tune2fs -l /dev/md0 |grep Reserved
Reserved block count:     1279986
Reserved GDT blocks:      1017
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)

Sie können dies auf Ihren ext-Dateisystemen mit deaktivieren tune2fs -m 0 /dev/NAME

Ich glaube nicht, dass xfs Platz für root reserviert hat

zje
quelle