2010-11-24 109 views

回答

1

在某些Unix文件系統(例如ext * fs)中,實際上由系統管理員決定,他們在創建文件系統時設置相對參數。

如果文件系統將託管大量小文件(新聞和郵件服務器是典型示例),則需要大量inode,因爲您需要每個對象(文件或目錄)的inode。

另一方面,如果文件系統將託管較大的文件(例如視頻服務器),則不需要多少inode。

由於inodes佔用空間,因此在性能/效率和足夠的inode之間實現平衡是非常重要的。一種簡單的方法是計算具有相似使用模式的活動文件系統上的平均文件大小,並將該數字用作新FS上的字節/ inode比率的基準值。只要使用模式沒有發生大幅變化,這將使FS在功能填滿時保持功能。

如果你實際設計的是一個新的文件系統,而不是僅僅創建一個卷,你應該考慮像其他常見的Unix文件系統(例如JFS,XFS,Reiserfs)那樣動態分配inode。這會讓你的文件系統稍微靈活一點,不過一般認爲動態FS結構使腐敗問題的恢復更加困難。

2

一些現代的文件系統(XFS for one)根據需要動態分配inode。沒有該功能的文件系統會根據磁盤大小選擇基於體驗的值(例如,ext2/3/4會爲每4KB磁盤空間IIRC創建一個inode),創建文件系統時通常會調整此值。