V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
mingtdlb
V2EX  ›  问与答

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

  •  
  •   mingtdlb · Apr 16, 2024 · 1760 views
    This topic created in 741 days ago, the information mentioned may be changed or developed.

    为什么 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 replies    2024-04-16 18:47:50 +08:00
    Chichele
        1
    Chichele  
       Apr 16, 2024
    我说的不一定准确,/dev/sda4 是分区,可能是挂载了根目录/的,df 展示的是/Data 目录所属的/dev/sda4 分区以及该分区的情况; du 展示的才是文件夹/Data 所占用的空间。
    rrfeng
        2
    rrfeng  
       Apr 16, 2024 via Android
    1 稀疏文件(典型比如虚拟机磁盘)
    2 重复 mount
    Suomea
        3
    Suomea  
       Apr 16, 2024
    有可能文件删了,但是进程没有释放。lsof | grep deleted 看看有没有 data 路径下的文件。
    MineDog
        4
    MineDog  
       Apr 16, 2024
    三楼说的是一种情况,不过你已经排除了。
    还有一种就是 比如 /data/a 原来是普通目录,里面有数据,但是重新在/data/a 路径下挂载一个盘,这个时候 du 不会统计原来 /data/a 的数据,但是 df 能统计到
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3197 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 13:40 · PVG 21:40 · LAX 06:40 · JFK 09:40
    ♥ Do have faith in what you're doing.