df显示使用的负值

嘿大家,第一个问题在这里。

我有一个centos 5.2服务器并运行df -hi得到这个:

Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 672G -551M 638G 0% / /dev/hda1 99M 12M 82M 13% /boot tmpfs 2.0G 0 2.0G 0% /dev/shm 

这个空间甚至还没有接近10%的使用率,上一次显示正确的价值,我不知道怎么回事。

谢谢。

编辑:

好吧,所以我不得不重新启动服务器,因为SSH吊死了,我猜这是与此有关。

一些新的信息,重新启动后, df -h显示使用12Gb(2%),但如果我运行du -hcs /它显示总计46Gb,这里有一个很大的区别

EDIT2:

正常运行15分钟后, df -h再次显示负值:

Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00 672G -24G 660G - /

EDIT3:

更多信息,跑了一个fsck,这是输出:

 Checking all file systems. [/sbin/fsck.ext3 (1) -- /] fsck.ext3 -f -y /dev/VolGroup00/LogVol00 Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/VolGroup00/LogVol00: 204158/181633024 files (1.3% non-contiguous), 9224806/181633024 blocks [/sbin/fsck.ext3 (1) -- /boot] fsck.ext3 -f -y /dev/hda1 Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /boot: 34/26104 files (5.9% non-contiguous), 15339/104388 blocks 

我认为这是一个文件系统的腐败。 你应该卸载分区并运行fsck。
检查日志和控制台是否有任何文件系统错误。

我认为这可能意味着你已经超出了保留的唯一空间(我认为ext3的默认值是5%):

 $ sudo tune2fs -l /dev/sda1 | grep -i 'Reserved block count' Reserved block count: 1877194 

保留块数是一定数量的块,只有root用户在磁盘快满后才能使用(这可以防止普通用户填满fs并导致事情中断)。 从man tune2fs

  -m reserved-blocks-percentage 

设置只能由特权进程分配的文件系统的百分比。 保留一定数量的文件系统块以供特权进程使用,以避免文件系统碎片化,并允许诸如syslogd(8)之类的系统守护进程在阻止非特权进程写入文件系统之后继续正常工作。 通常,保留块的默认百分比是5%。

所以我认为有些东西是以root用户的身份快速占用空间的。 您可以使用du -hcs /并从那里向下钻取以find正在使用该空间的文件的位置。 如果你认为这可能是创build大文件的东西,你也可以使用find命令。