zoukankan      html  css  js  c++  java
  • du和df显示磁盘空间使用差异大的几种情况

            接触客户多了,发现经常有客户遇到du看到系统只使用了一部分磁盘空间,但df看时磁盘空间已经满了,或者差异较大,我遇到过三次不一样的原因,下面做一下总结,恶补一下!也希望对大家有点帮助!

    现象:有客户反馈有二台主机du和df看到磁盘空间使用不一致

            

    原因:客户在挂载数据盘到/data目录之前,曾挂载过系统盘到/data测试并把系统盘空间写满

    解决:发现重复挂载之后,先卸载数据盘,现在只有系统盘挂载到/data目录,然后删除/data下内容,重新挂载数据盘到/data目录即可

    总结:

    1.du是根据看到文件的大小来统计磁盘空间的使用情况,即所见即所得,du -sh /  或者 du -sh /*

        df是根据元数据获取的,就是读取分区的超级块信息来统计分区的的使用情况的(比du看到的记过更准确), df -hT

    2.du和df不一致的几种情况分析

       1)可能由于删除了正在使用中的文件,导致文件被删除,但进程和超级块信息并没有释放。

             解决:lsof |grep -i delete 过滤下是否有相关进程未释放,kill掉相关进程即可。

                       删除这种正在写入的文件(一般都是日志类的),最好用“echo > 文件名“的方式来清零文件。

       2)可能某些目录被其他磁盘重复挂载导致。

            解决:1)可以先用df -hT 看下相关挂载目录。2)用mount |grep 目录  过滤一下是否有重复挂载,也可以mount -o remount 一下fstab文件。

       3)可能预留空间较多导致,df统计的时候会把系统预留的空间也给 算上是使用的了。

            查看:tune2fs -l 设备名 查看系统的超级块信息,看看预留多少空间。也可以用tune2fs命令更改。

       4)也有可能是空洞文件导致的

  • 相关阅读:
    System.Web.Security下提供了非常简单的MD5加密算法,但处在非Web层的项目要怎么使用MD5加密呢?
    切换用户账户访问共享 记
    从盛大通行证上摘下来的身份证验证代码
    HA_Xenu1.3.6 使用手记
    asp.net跨域共享session(不能跨主机名)
    应用程序池自动关闭
    忘记 win2003 密码 记
    Ajax 入门 【学习手记】
    转载 防盗链
    超链接的 target
  • 原文地址:https://www.cnblogs.com/Tao9/p/7763347.html
Copyright © 2011-2022 走看看