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

Linux 磁盘占用 怎么理解?

  •  
  •   ruandao · 2019-05-09 20:33:30 +08:00 · 1597 次点击
    这是一个创建于 2025 天前的主题,其中的信息可能已经有所发展或是发生改变。

    [root@gameServer ~]# du -sh / 2>/dev/null | sort -h
    5.9G /
    [root@gameServer ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/vda1 40G 31G 6.9G 82% /
    devtmpfs 1.9G 0 1.9G 0% /dev
    tmpfs 1.9G 0 1.9G 0% /dev/shm
    tmpfs 1.9G 636K 1.9G 1% /run
    tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
    tmpfs 380M 0 380M 0% /run/user/0

    上面写 使用了 31G ... but 是哪些文件?

    8 条回复    2019-05-10 01:23:00 +08:00
    Imr
        1
    Imr  
       2019-05-09 20:49:16 +08:00 via iPhone
    lsof|grep deleted 看看?
    foobar2000
        2
    foobar2000  
       2019-05-09 21:21:35 +08:00 via iPhone
    不是写了吗,根目录上所有文件
    foobar2000
        3
    foobar2000  
       2019-05-09 21:22:10 +08:00 via iPhone
    日志系统也有一部分,不会显示出来
    CSM
        4
    CSM  
       2019-05-09 23:29:39 +08:00 via Android
    foobar2000
        5
    foobar2000  
       2019-05-10 00:32:09 +08:00 via iPhone
    没看到第一行……
    weyou
        6
    weyou  
       2019-05-10 00:34:03 +08:00 via Android
    du / -sh --apparent-size
    momocraft
        7
    momocraft  
       2019-05-10 01:14:45 +08:00
    幾種可能性:

    - 存在有 inode 沒有文件名的文件 (如: open 後 unlink 但不 close), du 不能枚舉這些
    - df 在某些文件系統上不一定準, 比如 btrfs
    XiaoxiaoPu
        8
    XiaoxiaoPu  
       2019-05-10 01:23:00 +08:00
    可能是有文件被删除但是仍然被某个进程引用,因为文件系统对文件的引用没了,所以不会被 du 统计到,但是因为被进程引用,所以不会被删除
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1105 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 18:45 · PVG 02:45 · LAX 10:45 · JFK 13:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.