実際にファイルの公称サイズのどれだけがデータで満たされているかを出力するにはどうすればよいですか?同様に、vmtouch現在どのくらいのファイルがメモリにあるかを示します...
ワークフローは次のようになります。
$ fallocate -l 1000000 data
$ measure_sparseness data
100%
$ fallocate -p -o 250000 -l 500000 data
$ measure_sparseness
50%
回避策:それらを使用du -bshしdu -shて比較します。
filefrag data->複数FIBMAP: Invalid argument-> data: 1 extent found...
どのファイルシステムに?
—
ピーターコーデス
filefrag -e少なくともXFSとext4で完全に動作します。私は他でテストしていません。FIBMMAPへのフォールバックを備えたFIEMAP(エクステントマップ)を使用します。これらioctlが機能しない場合、それは役に立ちません。
tmpfsで。私に
—
Vi。
filefragは-e選択肢がありません。
あなたは
—
ピーターコーデス
e2fsprogs何歳ですか?最近の機能ではないと確信しています。ありますまた、-vオプションで同じ冗長情報(プラスいくつかの余分なヘッダ行)を出力します。たぶん、あなたfilefragはそれを持っているでしょう。xfs_bmapただし、とは異なり、個別の行で穴を明示的に示すのではなく、ファイルの位置に不連続性があります。とにかく、tmpfsバッキングストアとしてのブロックデバイスがないため、FIEMAPをサポートしていないことに驚かされません。したがって、エクステントの場所に意味のある値はありません。
filefrag任意のファイルシステムおよびxfs_bmap -vplXFSは、スパースファイルやホールパンチングで遊んでいるときにデータの場所(および事前に割り当てられた未書き込みエクステントの場所)を示すための重要なツールです。