
我用於rsync
將所有文件從一個格式化為 HFS+ 的 3TB 外部磁碟複製到另一個格式化為 exFAT 的 3TB 外部磁碟。
在開始複製之前,我仔細檢查了兩個磁碟的大小完全相同,並格式化了目標磁碟,事實上來源磁碟有 38GB 空間,因此大約有 2962 GB 的檔案(在我的系統上 1TB = 1000GB)。
rsync
目標磁碟已滿,約 90% 的進度已失敗。這可以用 HFS+ 和 exFAT 之間的差異來解釋嗎?與 HFS+ 相比,exFAT 在儲存檔案時是否更浪費磁碟空間?
答案1
長話短說
原因是 exFAT 預設區塊大小較大。只需使用較小的區塊大小重新格式化它就可以了
但也要注意,macOS 在使用 Finder 複製來儲存文件元資料時會建立大量隱藏._
文件,與 HFS+ 相比,這會消耗更多空間。您應該使用命令列複製以避免創建這些文件
其實 exFAT 如此簡單更有效率在磁碟使用方面比其他更高級的檔案系統(如 NTFS、ext4、APFS、HFS+...)提供區塊大小是一樣的,因為檔案系統越複雜,它需要的元資料就越多。只需在這些檔案系統中格式化一個新分割區,您就會發現空白磁碟機中的已使用空間比 exFAT 大得多:
然而事情是這樣的exFAT 更大區塊大小預設情況下。 3 TB 硬碟的區塊大小為 1 MiB,而其他檔案系統上的區塊大小為 4 KiB。看1 位元組檔案在 6 TB exFAT Veracrypt 磁碟區上佔用 2 MB(是的,兆位元組)。為什麼?對於 exFAT 上的預設簇大小:
Volume size Cluster size
500 GiB 128 KiB
1000 GiB 256 KiB
1500 GiB 512 KiB
2000 GiB 512 KiB
3000 GiB 1 MiB
4000 GiB 1 MiB
5000 GiB 2 MiB
8000 GiB 2 MiB
10000 GiB 4 MiB
20000 GiB 8 MiB
這意味著,如果您有一個 640 KiB 的文件,則在將其儲存在 exFAT 中時,您在 HFS+ 中不會浪費任何內容,只會浪費 384 KiB。因此,預設情況下,exFAT 磁碟填滿的速度會更快。你必須重新格式化 exFAT 分割區並選擇較小的區塊大小減少浪費空間
也可以看看
答案2
> much more wasteful of disk space
- 檔案系統之間的效率總是存在差異。當您接近類似大小的磁碟的最大容量時,這將不可避免地顯現出來。
僅分配區塊大小的差異就會產生巨大的影響,例如,當您有很多分配區塊時,效率會降低小的檔案和相對較大的分配區塊大小。