「du」コマンドが4KBステップを使用するのはなぜですか? [コピー]

「du」コマンドが4KBステップを使用するのはなぜですか? [コピー]

重複の可能性:
ディレクトリサイズの計算の違い

duLinuxでは、コマンドがどのように機能するのかわかりません。何百もの小さなファイルの合計サイズを計算し、du -sh約150 MBのコンテンツを返そうとします。私のファイルマネージャが同じデータセットの約50MBしか表示していないことに気づくまで、これについて疑問を提起しておらず、混乱していました。

これが私が試したことです:

fkochem@WK-6:~/temp$ cat test 
a
fkochem@WK-6:~/temp$ du -sh test 
4.0K    test

それでは、これはバグであるに違いありませんか?du -sh *生データを調べたところ、次のような内容が見つかりました。

4.0K    NCO-0.9.9.9.json
4.0K    NCO-0.99.9.json
4.0K    NCO-0.9.9.json
8.0K    NCO-0.99.json
8.0K    NCO-0.9.json

なぜdu4KBのステップだと思いますか?私がここで何を見逃しているのでしょうか?

答え1

duはディスク使用量で、ファイルに割り当てられているディスク量を計算します。最小の「ブロックサイズ」(つまり、ファイルに割り当てられた最小のブロック)は通常4kです。したがって、ファイルシステムはデューではなく4kブロックで測定されます。

ドライブを次のようにフォーマットすると、1,000ブロックになります。

mke2fs -b 1024 /dev/XXX

関連情報