分布式文件系統 OpenAFS
OpenAFS是一套開放源代碼的分布式文件系統,允許系統之間通過局域和廣域網來分享檔案和資源。
OpenAFS 是圍繞一組叫做 cell 的文件服務器組織的。每個服務器的標識通常是隱藏在文件系統中的。從 AFS 客戶機登錄的用戶將分辨不出他們在哪個服務器上運行,因為從用戶的觀點來看,他們想在有可識別的 UNIX 文件系統語義的單個系統上運行。文件系統內容通常都是跨 cell 復制,以便一個硬盤的失效不會損害 OpenAFS 客戶機上的運行。OpenAFS 需要高達 1 GB 的大容量客戶機緩存,以允許訪問經常使用的文件。它還是一個十分安全的基于 Kerbero 的系統,它使用訪問控制列表 (ACL) 以便可以進行細粒度的訪問,這不是基于通常的 Linux 和 UNIX 安全模型。
緩 存管理器碰巧是 OpenAFS 的一部分,很奇怪,它只作為底層文件系統與 ext2 一起運行。除緩存管理器之外,OpenAFS 表層的基本結構很像現代的 NFS 實現。但是,基本架構卻一點都不像,而且必須慎重看待它的任何并行。對那些仍喜歡使用 NFS,但是又想利用 OpenAFS 程序的人來說,可以使用所謂的 NFS/AFS 翻譯器。只要 OpenAFS 客戶機被配置為 NFS 服務器機器,您就應該能夠享受這兩種文件系統的優點。
NFS 是位置無關的,它把本地目錄映射到遠程文件系統位置。OpenAFS 對用戶隱藏了文件位置。因為可能所有的源文件都以讀寫副本的形式保存在復制到的不同文件服務器位置上,必須保持復制的副本同步。為此要使用一項稱作 Ubik 的技術,它源于單詞“ubiquitous(無所不在)”,是東歐拼寫法。Ubik 過程使 AFS 文件系統上的文件、目錄和卷 (volume) 保持同步,但是通常運行三個以上文件服務器進程的系統獲益最多。系統管理人員可以將一個 AFS 站點的幾個 AFS cell 分組 —— 這個以前的縮寫詞 AFS 已經被保留在 OpenAFS 文件系統的語義中了。管理人員將決定 AFS cell 的數目,以及 cell 使存儲器和文件對站點內的其他 AFS cell 可用的程度。