为什么“du”命令以 4KB 为步长?

为什么“du”命令以 4KB 为步长?

可能的重复:
目录大小计算差异

我不明白duLinux下的命令是如何工作的。我想要计算数百个小文件的总体大小,并du -sh返回大约 150MB 的内容。我没有提出疑问,直到我意识到我的文件管理器仅显示同一组数据的 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

为什么du似乎以 4KB 为步长?我在这里缺少什么?

答案1

du 是磁盘使用情况,它计算分配给文件的磁盘量。最小“块大小”(即分配给文件的最小块)通常为 4k。因此文件系统以 4k 块计算,而不是 du。

如果您按如下方式格式化驱动器,则将以 1k 块计:

mke2fs -b 1024 /dev/XXX

相关内容