var 目录通过命令“df-h”显示其完整内容

var 目录通过命令“df-h”显示其完整内容

df -h 显示:

df -h
Filesystem     Size    Used   Avail Capacity  Mounted on
/dev/ada0p2    1.9G    256M    1.5G    14%    /
devfs          1.0K    1.0K      0B   100%    /dev
/dev/ada0p4    804G     34G    706G     5%    /usr
/dev/ada0p5     93G    3.5G     82G     4%    /var

但是, du -sh 显示:

du -sh /var
3.5G    /var

为什么? df 告诉我 93G 已经没有空间了,但是当我检查 /var/ 目录的文件大小时,它达到了 3.5G?

任何人都可以解释一下这是为什么吗?

答案1

首先,你的问题本身非常有趣,df 和 du 工具在 Linux 中的工作方式不同

根据 Linux 手册页

du - estimate file space usage

df - report file system disk space usage

df 在文件系统级别工作,而 du 在文件级别工作,因此如果存在打开的文件描述符,du 将报告它,但 df 不会报告

相关内容