Warum sind die Ordner 'proc' und 'sys' größer als 100 TB? [geschlossen]

10

Jemand, den ich kenne, hat gerade die folgende Aussage gemacht:

"Ich habe Dateien im Wert von 140,7 TB auf meinem System"

Jemand anderes sagte etwas in der Art von "wie?" und die Antwort war:

"Virtueller RAM, Ubuntu hat seine Macken. /proc/coreDatei"

Ich weiß nicht viel über Linux und habe mich gefragt, ob jemand erklären könnte, worum es oben geht. Ich verstehe nicht, wie jemand irgendetwas im Wert von 140,7 TB haben könnte, es sei denn, er hat eine sehr große Anzahl von Festplatten.

jza
quelle
3
Was als Datei erscheint, ist nicht unbedingt eine Datei auf der Festplatte. Die logische Größe von Dateien entspricht nicht immer der physischen Größe (dh der erforderliche Speicherplatz).
Daniel Beck
Ich habe auch diese 140,7 TB-Datei. Die Bytegröße beträgt 140737477881856. Ich frage mich, was diese Zahl bedeutet.
NeverMind9
Diese Zahl liegt in der Nähe von 2 ^ 47, was 140.737.488.355.328 ist.
NeverMind9

Antworten:

14

Diese Speicherorte gehören zu virtuellen Dateisystemen. Alles, was Sie sehen - Ordner, Dateien, deren Inhalt - wird bei jedem Versuch, darauf zuzugreifen, vor Ort erstellt. Die tatsächliche Größe ist erst bekannt, nachdem Sie die Datei gelesen haben (und sie kann häufig nicht zwischengespeichert werden, da unterschiedliche Leser möglicherweise unterschiedliche Inhalte sehen).

Die Dateisysteme selbst belegen überhaupt nichts; Sie sind nur Ansichten in den Kernel.

Manchmal ist die Größe ist bekannt , aber die Daten , die sie repräsentiert ist massiv. Beispielsweise stellen die coreDateien den virtuellen Adressraum eines Prozesses dar - und dieser Adressraum ist so groß, wie die CPU adressieren kann. Es ist nicht an die tatsächliche RAM / Swap-Größe gebunden. Die Datei wird also auf einem "64-Bit" -System ungefähr 2 48 bis 2 64 Bytes groß sein.

Es ist also normal, dass Sie wirklich seltsame Zahlen erhalten, wenn Sie Dienstprogramme zur Datenträgernutzung auf virtuellen Dateisystemen ausführen, insbesondere wenn diese die "scheinbare" (spärliche) Größe und nicht die tatsächliche Datenträgernutzung zählen.

user1686
quelle
5

Nein, das ist nicht der Grund. Sparse - Dateien erscheinen eine bestimmte Größe , da die Datei - Header - Listen, aber sie enthalten viel weniger Daten.

Ignacio Vazquez-Abrams
quelle
5
Und erstaunliche Dinge passieren, wenn Sie versuchen, spärliche Dateien mit einem Sicherungsprogramm zu sichern, das sie nicht versteht. Das habe ich unter Xenix gelernt.
Fiasco Labs
1

Eine Möglichkeit könnte sein, dass sie eine große Anzahl komprimierter Dateien haben und die Größe zählen, die sie haben würden, wenn sie nicht komprimiert wären .

Dies hängt natürlich vom Dateityp ab, da einige Dateien weiter komprimiert werden als andere (z. B. Textdateien) und andere nicht weiter komprimiert werden können (z. B. JPG, MP3), ohne Daten zu verlieren. Theoretisch könnte dies jedoch die Zahlen ergeben, die Ihr Freund zitiert.

ChrisF
quelle
2
Sicher, wenn Sie ungefähr 20 TB Speicher hatten.
Ignacio Vazquez-Abrams
@ IgnacioVazquez-Abrams - Ich sage nicht, dass es wahrscheinlich ist, nur möglich.
ChrisF
@ IgnacioVazquez-Abrams: Das sind nur zehn 2-TB-Festplatten.
user1686
2
@grawity - voller Text ...
ysap
@ysap voller komprimierter Text.
SplinterReality