Linux

什麼是文件級快照,是否有支持此功能的文件系統?

  • September 19, 2021

我試圖了解什麼是文件級快照主機。任何人都知道哪些文件系統支持這一點,以便我可以嘗試一下。

參考。 http://tracker.ceph.com/issues/24464

首先,歡迎並感謝您有興趣為開源項目做出貢獻。我不確定您是否已經看過https://ceph.com/irc/>和<https://ceph.com/contribute/,但如果沒有,聯繫 Ceph 項目可能是一個不錯的起點。

那裡的描述相當稀疏,但他們確實說明了案例是什麼:Dropbox 風格的版本控制。Dropbox(不幸的是,它不是免費軟體)保留您上傳到它的文件的舊副本。因此,如果您編輯文件並出錯,您可以恢復錯誤前的版本。它類似於原始碼版本控制,除了 Dropbox 自動送出之外,它不是您手動執行的操作。

btrfs 具有類似的功能,通過在每個子卷級別(子卷可以是單個目錄)獲取快速、廉價的快照來實現。快照共享數據,只有被修改的塊才會變成非共享的(也就是寫時複製)。Snapper,我承認我從未使用過,它是一個基於此的使用者友好工具。Reflink(該錯誤阻止)是 btrfs 上的一個類似功能,它允許製作單個文件的寫時複製副本。

幾乎任何其他具有快照的文件系統都應該提供類似的功能,例如,我相信 ZFS 也可以。

我根本不了解 Ceph 的內部結構,但請注意——這個 bug 很可能是一項非常重要的任務。不僅要確保寫入根據需要執行複制,而且要保持高效,可能還有很多工作要做。例如,您不希望重寫一個 4GB 文件,最終導致一百萬個 4K 塊分散在整個設備上。

引用自:https://unix.stackexchange.com/questions/478734