V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
mingtdlb
V2EX  ›  问与答

大佬们,为什么 df 和 du 结果不一样,什么原因?

  •  
  •   mingtdlb · 14 天前 · 841 次点击

    为什么 df 和 du 结果不一样呢,差太多了

    [root@node1 ~]# df -hT /Data/
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/sda4      ext4   24G   18G  5.2G  78% /Data
    [root@node1 ~]#
    [root@node1 ~]# du -sh /Data/
    6.9G    /Data/
    [root@node1 ~]#
    [root@node1 ~]# lsof -w /Data/ | grep -i del
    [root@node1 ~]#
    
    
    4 条回复    2024-04-16 18:47:50 +08:00
    tigerstudent
        1
    tigerstudent  
       14 天前
    我说的不一定准确,/dev/sda4 是分区,可能是挂载了根目录/的,df 展示的是/Data 目录所属的/dev/sda4 分区以及该分区的情况; du 展示的才是文件夹/Data 所占用的空间。
    rrfeng
        2
    rrfeng  
       14 天前 via Android
    1 稀疏文件(典型比如虚拟机磁盘)
    2 重复 mount
    Suomea
        3
    Suomea  
       14 天前
    有可能文件删了,但是进程没有释放。lsof | grep deleted 看看有没有 data 路径下的文件。
    MineDog
        4
    MineDog  
       14 天前
    三楼说的是一种情况,不过你已经排除了。
    还有一种就是 比如 /data/a 原来是普通目录,里面有数据,但是重新在/data/a 路径下挂载一个盘,这个时候 du 不会统计原来 /data/a 的数据,但是 df 能统计到
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2713 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 10:52 · PVG 18:52 · LAX 03:52 · JFK 06:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.