注意:我完全了解本网站上的这些其他问题:
我的问题显示如下:
$ du -sh / --exclude=/proc
4.0G /
对比
$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_os-lv_root 18G 16.0G 1.9G 90% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 39M 3.8G 1% /dev/shm
tmpfs 3.9G 17M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda1 497M 215M 283M 44% /boot
tmpfs 783M 0 783M 0% /run/user/937000511
tmpfs 783M 0 783M 0% /run/user/937000593
我如何对这个问题进行分类以确定导致这种差异的原因?
在这种特殊情况下,问题是一个正在运行的守护进程,它的文件经过轮换,
logrotate
但没有发送服务kill -HUP
来触发它开始记录到新文件。这导致 12G 日志文件继续显示,就好像它正在消耗 HDD 上的空间,这可以通过df
但不是可见的du
,考虑到这两个 CLI 工具的工作方式。lsof
使用
lsof
和查找日志文件显示了问题:输出甚至显示有问题的
lsof
大小,实际上它已被删除:停止守护进程释放/关闭文件描述符以释放空间:
现在
df
和du
同意。