Symlink
硬連結真的會佔用這麼多磁碟空間嗎?
我發現我需要使用無法看到別名/符號連結的特定程序(Ableton Live)的硬連結,這當然是我組織所有工作文件的方式。但是製作硬連結是在創建看起來是原始文件的副本。
它們實際上佔用的空間與原版一樣多嗎?還是文件系統(本例中為 OSX)僅顯示磁碟上實際數據的大小,而在兩個地方引用它的事實實際上並沒有使數據量增加一倍?
你說的第二件事完全正確。文件內容在磁碟上只存在一次。硬連結是一個額外的引用,它佔用的空間非常小——目錄條目的大小,即文件名的長度加上幾個字節。
我不知道這是否適用於 OSX,但在我方便的 GNU coreutils 版本中,
du
它知道硬連結,因此您可以使用它來獲得一組文件總大小的準確報告。如果它找到一個文件的多個連結,它只會將它添加到總數中一次。ls -l
另一方面,做錯事並將它在目錄中看到的所有內容添加到它的total
行中。$ ls -sl total 296 296 -rw-r--r-- 1 user group 300324 Feb 17 19:08 f1 $ du 296 . $ ln f1 f2 $ ls -sl total 592 296 -rw-r--r-- 2 user group 300324 Feb 17 19:08 f1 296 -rw-r--r-- 2 user group 300324 Feb 17 19:08 f2 $ du 296 . $ cp f1 f3 $ ls -sl total 888 296 -rw-r--r-- 2 user group 300324 Feb 17 19:08 f1 296 -rw-r--r-- 2 user group 300324 Feb 17 19:08 f2 296 -rw-r--r-- 1 user group 300324 Feb 17 19:08 f3 $ du 592 . $
最終的展示將是創建一個超過磁碟一半大小的巨大文件。然後看看你可以創建多少個硬連結。應該不少。