设备上没有空间 – 尺寸错误

我正在运行一个FreeBSD专用服务器。 我收到了设备上的空间不足的消息。 df -h说我没有空间,但是du -sh /*甚至没有显示df -h显示的大小。

df -h输出:

 # df -h Filesystem Size Used Avail Capacity Mounted on /dev/ad4s1a 18G 17G -2.9M 100% / devfs 1.0k 1.0k 0B 100% /dev /dev/ad4s1b 1.8T 379G 1.2T 23% /home linprocfs 4.0k 4.0k 0B 100% /usr/compat/linux/proc procfs 4.0k 4.0k 0B 100% /proc devfs 1.0k 1.0k 0B 100% /var/named/dev 

它显示/分区已满,但是du -sh甚至没有显示巨大的目录(即使是4GB也没有):

 # du -sh /* 8.0k /COPYRIGHT 1.2M /bin 416M /boot 0B /compat 2.5k /dev 2M /etc 8.4M /lib 3.7M /libexec 2.0k /media 2.0k /mnt 0B /proc 5.1M /rescue 3.7M /root 5.8M /sbin 0B /sys 2.9M /tmp 2.5G /usr 662M /var 

另外, df -i输出:

 # df -i Filesystem 1K-blocks Used Avail Capacity iused ifree %iused Mounted on /dev/ad4s1a 19834638 18247768 100 100% 253233 2313933 10% / devfs 1 1 0 100% 0 0 100% /dev /dev/ad4s1b 1871693806 397838408 1324119894 23% 87535 241862159 0% /home linprocfs 4 4 0 100% 1 0 100% /usr/compat/linux/proc procfs 4 4 0 100% 1 0 100% /proc devfs 1 1 0 100% 0 0 100% /var/named/dev 

问题是什么?

  1. 也许,你最近清理apache的日志? 如果是这样,那么尝试重新启动apache后,你应该重新获得空间。
  2. 运行fsck作为您的文件系统可能已损坏。

清理日志的方法很less:

  • 安装logrorate(更好的方法)。
  • echo > $FILE (脏方式)。