Unix

設備上沒有剩餘空間 - 尺寸錯誤

  • July 23, 2014

我正在執行一個 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,因為您的文件系統可能已損壞。

清理日誌的幾種方法:

  • 設置 logrorate (更好的方法)。
  • echo > $FILE(骯髒的方式)。

引用自:https://serverfault.com/questions/614940