du -sh 使用率与 df -h 使用量不匹配!

du -sh 使用率与 df -h 使用量不匹配!

根据 df -h,我的 /var 分区已接近 100% 满

    root@buz02:/var/lib# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda5             4.7G  600M  3.9G  14% /
    ...
    /dev/sda7             9.3G  8.7G   94M  99% /var

然而,当我运行 du -sh 时,我使用的内存不到 2GB!

    root@buzi02:/var# du -sh *
    8.0K    autofs
    3.5M    backups
    96M     cache
    1.2G    lib
    4.0K    local
    0       lock
    13M     log
    28K     lost+found
    4.0K    mail
    4.0K    opt
    96K     run
    48K     spool
    4.0K    syslog-ng.persist
    8.0K    tmp
    113M    www
    40K     yp

这是 Ubuntu 8.04 的功能吗?我没有以任何方式修改磁盘配置,而且我也不是原始安装程序。但是,如果有人知道的话,我想知道另外 7GB 的磁盘去了哪里……?

root@buz02:/var# fdisk -l

Disk /dev/sda: 499.9 GB, 499998320640 bytes
255 heads, 63 sectors/track, 60788 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x789298fa

Device Boot         Start         End      Blocks   Id  System
/dev/sda1               1          12       96358+  83  Linux
/dev/sda2              13       60786   488167155    5  Extended
/dev/sda5              13         620     4883728+  83  Linux
/dev/sda6             621        1228     4883728+  83  Linux
/dev/sda7            1229        2444     9767488+  83  Linux <<<<< /var
/dev/sda8            2445        3173     5855661   82  Linux swap / Solaris
/dev/sda9            3174       60786   462776391   83  Linux

我也检查了 /usr,但它的数学运算结果正确......

答案1

我不确定,但我有一个想法:df 表示磁盘可用,因此它将显示您的磁盘实际可用空间。du 表示磁盘已用,因此它将显示您的磁盘实际已用空间。会不会是实际只使用了 2GB,但其余空间已经为某些东西保留了?我从与 RAM 相关的内存统计信息中了解到这个问题,即已用/保留之间存在混淆。但我不确定这一点。

附言:您到底为什么要使用 8 年前的系统?这就像问别人为什么您的 Windows 2000 机器上的某些东西无法正常工作一样!

相关内容