df 和 du 报告使用的文件系统数量不同
df and du are reporting different amounts of filesystem used
我有一个 centos 系统,它使用 df 报告的磁盘使用情况比使用 du 报告的多。我读过当文件句柄没有关闭时会发生这种情况。但是,我已经多次重新启动系统并且 lsof 没有显示任何搁浅的文件句柄。
此主机正在镜像我使用 lftp nightly 管理的另一台主机。我已经在这台主机上设置了 apache,使用符号 link 将它指向镜像目录。实际镜像数据约为 12-13 GB。基于此,14 GB 的数字似乎是正确的,df 报告了额外的 9 GB。
可能是什么原因造成的?
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda 48G 23G 23G 50% /
tmpfs 492M 112K 492M 1% /dev/shm
$ du -hs / 2>/dev/null
14G /
运行 该驱动器上的 fsck
。
df
将为您提供磁盘未分配块计数中的块数,du
报告可通过文件系统访问的块数。您可以看到这些方法的差异,因为 df 是瞬时的(查找一个数字),而 du 花费的时间与它必须检查的文件数(准确地说是 i 节点)成正比。
可能有 9GB 的 space 不在免费计数中,而且没有文件名可以访问它们。这是文件系统损坏的常见形式。
运行 du
作为根用户。您的用户帐户无法访问的文件将不包含在总和中,因此您必须 运行 以 root 身份查看磁盘上所有文件的总和。
我有一个 centos 系统,它使用 df 报告的磁盘使用情况比使用 du 报告的多。我读过当文件句柄没有关闭时会发生这种情况。但是,我已经多次重新启动系统并且 lsof 没有显示任何搁浅的文件句柄。
此主机正在镜像我使用 lftp nightly 管理的另一台主机。我已经在这台主机上设置了 apache,使用符号 link 将它指向镜像目录。实际镜像数据约为 12-13 GB。基于此,14 GB 的数字似乎是正确的,df 报告了额外的 9 GB。
可能是什么原因造成的?
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda 48G 23G 23G 50% /
tmpfs 492M 112K 492M 1% /dev/shm
$ du -hs / 2>/dev/null
14G /
运行 该驱动器上的 fsck
。
df
将为您提供磁盘未分配块计数中的块数,du
报告可通过文件系统访问的块数。您可以看到这些方法的差异,因为 df 是瞬时的(查找一个数字),而 du 花费的时间与它必须检查的文件数(准确地说是 i 节点)成正比。
可能有 9GB 的 space 不在免费计数中,而且没有文件名可以访问它们。这是文件系统损坏的常见形式。
运行 du
作为根用户。您的用户帐户无法访问的文件将不包含在总和中,因此您必须 运行 以 root 身份查看磁盘上所有文件的总和。