Frequently Asked Questions for FreeBSD 2.X : 安裝 FreeBSD : ffs 檔案系統的限制是什麼﹖
Previous: 記憶體的限制是什麼﹖
Next: 我該怎麼在軟碟上放入 1TB 檔案?

2.27. ffs 檔案系統的限制是什麼﹖

對 ffs filesystems 而言,最大理論值限制在 8 terabytes(2G blocks ),或當使用內定 8K block 大小時,限制是 16TB。還有,軟體限制是 1 terabytes,但如果是經過修改的檔案系統上 4 terabytes 是可能(並 且存在)的。

單一 ffs 檔案的大小最大是趨近 1G blocks(4TB) - 假如 block 大小是 4K。

                           maxfilesize
                ----------------------------------
                2.2.7    3.0
fs block size   -stable  -current  works  should-work
-------------   -------  --------  -----  -----------
4K              4T-1       4T-1    4T-1   4+T
8K              32+G       8T-1    32+G   16T-1
16K             128+G      16T-1   128+G  32T-1
32K             512+G      32T-1   512+G  64T-1
64K             2048+G     64T-1   2048+G 128T-1
     

當 fs block 大小是 4K,triple indirect block 運作並且所有的事情 都應該以表示成使用 triple indirect block 的最大 fs block 來作限 制(近似於 1K^3 + 1K^2 + 1K),但在 fs block 數目上卻有一個(錯誤) 的 1G-1 限制。對 fs block 數目的限制應該是 2G-1。在 fs block 數目接近 2G-1 時有點錯誤,但當 fs block 大小是 4K 時這個 block 數目是不能達到的。

block 大小如果是 8K 或更大,fs block 數目應該限制在 2G-1,但實 際 fs block 數目卻限制在 1G-1,除了在 -stable 時 triple indirect blocks 是無法達到的,所以最多 fs block 數目的限制可以表示成用 double indirect blocks(近似於(blocksize/4)^2 + (blocksize/4)) ,且在 -current 下超過這個限制可能會導致問題產生。使用正確的 2G-1 block 限制的確會導致問題發生。


Frequently Asked Questions for FreeBSD 2.X : 安裝 FreeBSD : ffs 檔案系統的限制是什麼﹖
Previous: 記憶體的限制是什麼﹖
Next: 我該怎麼在軟碟上放入 1TB 檔案?