centos 6.5 查看df -ah 和 du -sh 空间不一致的情况问题分析

场景:
centos 6.5 查看df -ah /data和 du -sh /data 发现计算出的空间不一致的情况

分析过程:
1、当时认为是缓存或者是清理文件存储延时导致,
使用 echo 3>/proc/sys/vm/drop_cashe 处理;
同时 使用free -m 检查 内存发现可用内存正常;
2、使用 lsof |grep deleted 检查 文件处理情况
发现 在使用 du -sh * 分析中是使用 rm -rf ** 文件的处理还在进程中,说明 rm -rf 操作并没有执行完成;

3、 使用 ps -ef | grep 文件 跟踪,发现 跟文件存在运行的服务进程导致 rm 操作无法进行,停止 该服务进程(kill -9 pid), 再次检查 lsof |grep deleted
发现 该文件进程将不再存在
4、 此时 df -ah /data和 du -sh /data 计算慢慢保持一致了

  tips:
  1、当出现du和df差距很大的情况时,考虑是否是有删除文件未完成造成的,方法是lsof命令,
    然后停止相关进程即可。
  2、除了rm外,有些命令会间接的删除文件,如gzip命令完成后会删除原来的文件,
  为了避免删除问题,压缩前先确认没有进程打开该文件
阅读更多
文章标签: centos 存储
个人分类: liunx
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭