procフォルダとsysフォルダのサイズが100 TBを超えるのはなぜですか? [閉まっている]


10

私が知っている誰かがちょうど次のように述べました:

「私のシステムには140.7 TB分のファイルがあります」

他の誰かが「どうやって」という方向に何かを言ったそしてその反応は次のとおりです。

「仮想RAM、Ubuntuには癖があります。 /proc/core ファイル"

私はLinuxについてあまり知りませんし、誰かが上記のすべてが何についてであるのか説明できるかどうか疑問に思いました。非常に多数のハードディスクを持っていない限り、140.7TBの価値があるものは誰にもありません。


3
ファイルのように見えるものは、必ずしもハードディスク上のファイルではありません。そしてファイルの論理的サイズはそれらの物理的サイズと同じではありません(すなわち必要な記憶容量)。
Daniel Beck

私もこの140.7 TBのファイルを持っています。バイトサイズは140737477881856です。その数字が何を意味するのだろうか。
neverMind9

その数は2 ^ 47に近く、140.737.488.355.328です。
neverMind9

回答:


14

これらの場所はに属します バーチャル ファイルシステム。あなたがそれにアクセスしようとするときはいつでもあなたが見るすべて - フォルダー、ファイル、それらの内容 - はその場で作られています。実際のサイズは、それまで知られていません 後に あなたはファイルを読みます(そして、異なる読者が異なる内容を見るかもしれないので、それはしばしばキャッシュすることができません)。

ファイルシステム自体は何も占有しません。それらはカーネルに対する単なる見解です。

時にはサイズ です 知られているがデータそれ を表す 大規模です。たとえば、 core ファイルはプロセスの仮想アドレス空間を表します - そしてこのアドレス空間はCPUがアドレス指定できるのと同じくらい大きいです。実際のRAM /スワップサイズによって制限されません。だから、ファイルはどこかになります2 48 2まで 64 「64ビット」システムではバイト数。

そのため、仮想ファイルシステム上でディスク使用率ユーティリティを実行すると、特に実際のディスク使用量ではなく、「見かけ上の」(まばらな)サイズを計算する場合、本当に奇妙な数字になることが普通です。


5

いいえ、そうではありません。 スパースファイル 現れる ファイルヘッダーにリストされているので一定のサイズですが、 含む はるかに少ないデータ。


5
スパースファイルを理解できないバックアッププログラムでバックアップしようとすると、驚くべきことが起こります。 Xenixでそれを学びました。
Fiasco Labs

1

一方通行 できた 彼らはたくさんの圧縮ファイルを持っていて、次のときにそれらがあるであろうサイズを数えているということです 非圧縮

明らかにこれはファイルの種類に依存するでしょう、なぜならいくつかのファイルは他のものよりさらに圧縮するので(例えばテキストファイル)そして他のものはデータを失うことなくそれ以上圧縮できない(例えばjpg、mp3)が 理論的には これはあなたの友人が引用する数を与えるかもしれません。


2
あなたが約20TBの記憶容量を持っていたならば、もちろん。
Ignacio Vazquez-Abrams

@ IgnacioVazquez-Abrams - 私はそれがありそうだと言っているのではなく、ちょうど可能だ。
ChrisF

@ IgnacioVazquez-Abrams:それはたったの10TBディスクです。
grawity

2
@grawity - テキストがいっぱい...
ysap

圧縮されたテキストでいっぱいの@ysap。
SplinterReality
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.