Linux

du 與 df 的區別

  • June 25, 2013

我有一個文件伺服器,其中 df 報告 94% 的 / 完整的。但根據 du 的說法,使用的更少:

# df -h /
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             270G  240G   17G  94% /
# du -hxs /
124G    /

我讀到打開但刪除的文件可能是造成它的原因,但重新啟動並沒有解決這個問題。

這是Linux,ext3。

問候

好的,找到了。

我在同一文件系統中的/mnt/Backup 上有一個舊備份,然後在該位置安裝了一個外部驅動器。所以 du 沒有看到文件。所以清理這個給了我我的磁碟空間。

它可能是這樣發生的:在日常備份腳本執行時,外部驅動器曾經被解除安裝。

我認為您不會找到更徹底的解釋,然後這個連結可能會關閉。一些可能有幫助的亮點:

  • 你的 inode 使用率是多少,如果它幾乎是 100% 會搞砸:

df -i

  • 你的塊大小是多少?許多小文件和大塊大小可能會使它產生很大的偏差。

須藤 tune2fs -l /dev/sda1 | grep ‘塊大小’

  • 刪除的文件,您說您對此進行了調查,但是要獲得總空間,您可以使用以下管道(我喜歡 find 而不是 lsof 只是因為 lsof 很難解析):

sudo find /proc/*/fd -printf “%l\t%s\n” | grep 刪除 | 切-f2 | (tr ‘\n’ +; 迴聲 0) | 公元前

但是,這幾乎是 2 倍的折扣。為了安全起見,在解除安裝分區時在分區上執行 fsck。

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