Filesystems
du -b
顯示的大小與 ls
不同
我有一個包含幾百個文件的目錄(真實文件,沒有符號連結,沒有子目錄)。
當我
ls -la
在 Excel 中使用和總結大小時,我得到287190
字節(?)。當我使用
du -b
或du --apparent-size --block-size=1
得到422358
字節時(?)。我以為這兩個意思是一樣的,為什麼不一樣呢?
du
給出磁碟使用情況,它與所有文件大小的總和不同。例如,a
du -b file
將提供與創建目錄“dir”不同的輸出,將相同的文件放在“dir”中並執行du -b dir
. 在我的系統上,目錄的“成本”有 30 個額外字節。根據目錄的內容,我想目錄大小會改變(但如果它是完全線性的,我會感到驚訝)。此外,差異的相對大小意味著您可能錯過了一個包含很多文件的隱藏目錄,或者您可能錯過了很多隱藏文件(即使您確實使用了 -a 標誌)。
此外,如果一個工具跟隨它們而另一個工具沒有跟隨它們,則可能存在導致差異的符號連結。
最後,對於某些文件系統,如果文件的內容足夠小,它們可能會內聯到文件系統 INode 中,並且對於許多文件系統,即使該塊沒有完全使用,也會保留一個塊來保存文件的內容. 在嘗試比較兩者時,這些變化會增加額外的噪音。