ComposeFS,來自 Flatpak 創建者的文件系統

組件

componefs 是為 Linux 提出的新文件系統

最近有消息說 亞歷山大·拉森(Alexander Larsson),Red Hat 的 Flatpak 的創建者,擁有 發布了實施補丁的預覽 文件系統 用於 Linux 內核的 ComposeFS。

建議的文件系統 類似於 Squashfs 也適用於掛載只讀圖像。 差異歸結為 ComposeFS 能夠有效地共享多個掛載磁盤映像的內容,並支持可讀數據身份驗證。

可能需要 ComposeFS 的應用領域是掛載容器鏡像和使用類似 Git 的 OSTree 存儲庫。 這允許在圖像之間共享內容文件,即使圖像之間的元數據(例如時間戳或文件所有權)不同。

ComposeFS 使用基於內容的尋址存儲模型, 也就是說,主要標識符不是文件名,而是文件內容的哈希值。 這個模型 提供重複數據刪除並允許只存儲一個副本 在不同的掛載分區上找到相同的文件。

本質上,composefs 是一種構建和使用只讀圖像的方法。 其使用方式與您的使用方式類似,例如 loopback 壁球圖像。 除此之外,composefs 還有兩個新的基礎 特徵。 首先,它允許共享文件數據(在磁盤上和 頁面緩存)在圖像之間,其次你有 dm-verity 之類的 閱讀驗證。

例如, 容器鏡像包含許多常用文件 系統和 Composefs,這些文件中的每一個都將由所有安裝的圖像共享,而無需使用諸如使用硬鏈接轉發之類的技巧。

同時,共享文件不僅在磁盤上存儲為單個副本,而且在頁面緩存中也由一個條目管理,從而使磁盤和 RAM 都得到保存。

Composefs 還支持內容文件的 fs-verity 驗證。 使用它,內容文件的摘要存儲在圖像中,並且 composefs 將驗證它使用的內容文件是否啟用了 fs-verity 摘要以進行匹配。 這意味著支持內容不能以任何方式(錯誤或惡意)更改,而不會在使用文件時被檢測到。

您還可以在圖像文件本身上使用 fs-verity,並將預期的 fs-verity 摘要作為掛載選項傳遞,這將由 composefs 驗證。 在這種情況下,我們對掛載文件的數據和元數據都充滿信心。 這解決了 fs-verity 單獨使用時的一個弱點,即它只能驗證文件數據,不能驗證元數據。

為了節省磁盤空間,數據和元數據在裝載的圖像中是分開的。 安裝時,指定:

  • 一個二進制索引,包含所有文件系統元數據、文件名、權限和除文件實際內容之外的其他信息。
  • 存儲所有掛載圖像文件內容的基本目錄。 文件是相對於其內容的哈希值存儲的。
  • 為每個 FS 映像創建一個二進制索引,並且所有映像的基本目錄都是相同的。 在共享存儲條件下驗證單個文件和整個圖像的內容,可以使用fs-verity機制,該機制在訪問文件時,驗證二進制索引中指定的哈希是否對應於內容。真實(即,如果攻擊者對基本目錄中的文件進行更改或數據因故障而損壞,則此類協調將顯示出差異)。

最後,如果你是 有興趣了解更多,您可以檢查 以下鏈接中提供了詳細信息。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。