題 UNIX中的文件數量是否有限制?


UNIX文件系統中的文件數量是否有限制?


3
2018-01-16 02:27


起源


在一個單獨的目錄?在文件系統上?請更具體一點。 - Brian Clapper


答案:


這取決於文件​​系統的類型。如果您使用帶有默認參數的ext4,那麼您最多可以:

  • 共計40億個文件。
  • 單個目錄中的64000個子目錄。
  • 單個文件最大16TB。

其中一些是可配置的,顯然受到介質上實際存儲空間的限制。最好閱讀文件系統類型的文檔。

如果您正在談論一個進程可以立即打開的文件句柄數,那麼它取決於您的系統。 ulimit -a 將在Linux系統上告訴您,並且可能默認為1024。

注意:數字來自ext4維基百科頁面。


8
2018-01-16 02:41



和 df -hi 顯示當前FS的inode限制及其使用統計信息。 - jweyrich


這取決於您正在攻擊的文件系統和容器 - 在目錄中,在卷中。 請參考這個 鏈接 有關EXT3文件系統的詳細信息。

創建文件系統時,將設置最大inode數(以及最大文件和目錄數)。如果V是以字節為單位的捲大小,則默認的inode數由V / 213(或塊數,以較小者為準)給出,最小值由V / 223給出。對於大多數應用程序來說,默認值已足夠一個目錄中的最大子目錄數固定為32000。

還為其他文件系統定義了類似的參數。


3
2018-01-16 02:36





如果您擔心局限性,請使用ZFS忘記它們。

引自 ZFS常見問題

ZFS有什麼限制?
  ZFS的局限性旨在實現   如此之大,他們將永遠不會   遇到任何實際問題   操作。 ZFS可以存儲16艾字節   在每個存儲池,文件系統,   文件或文件屬性。 ZFS可以存儲   數十億的名字:文件或   目錄中的目錄,文件   文件系統中的系統或快照   一個文件系統。 ZFS可以存儲   數万億項:文件中的文件   系統,文件系統,卷或   池中的快照。


3
2018-01-16 13:41