Files

是否有一個輕量級文件系統在另一個不支持的文件系統之上實現符號連結和文件權限?

  • September 19, 2016

我正在使用一些雲儲存服務(如 Dropbox、MEGA、Amazon Cloud Drive 等)。其中大多數不支持符號連結和文件權限(使用者、組、所有的簡單讀/寫/執行權限)。

Dropbox 支持文件權限,但不支持符號連結。MEGA 既不支持,我為 Amazon Cloud Drive 找到的(第三方)Linux 客戶端也不支持符號連結或權限。

我想知道是否有一個輕量級文件系統可以在本身不支持它們的文件系統之上實現符號連結和文件權限。我正在考慮將權限儲存在一個附加文件(可能是每個目錄)中的東西,如果該文件系統已安裝(可能是通過 FUSE),那麼它將讀取該權限列表並在 FUSE 安裝的文件系統中顯示正確的權限。同樣,它可以為符號連結使用特殊文件,並透明地使這些文件在不支持它的底層文件系統上工作。

在我開始編寫自己的 FUSE 文件系統之前,我想知道其他人是否已經有了相同的想法,並且我不必重新發明輪子……

(請注意,我知道將權限儲存在單獨文件中的安全問題,因為可以通過更改該文件來更改它們。但是,如果底層文件系統不支持權限,那麼我不確定是否有辦法在此之上安全地實現權限,因為如果一個人可以訪問底層文件系統,那麼無論如何都可以做任何事情。這對我來說更方便。如果我在一個與雲儲存同步的客戶端上創建一個執行檔,我希望它也可以在其他客戶端上執行。對於符號連結也是如此。)

事實證明 posixovl ( https://sourceforge.net/projects/posixovl/ ) 完全符合我的要求。所以問題的答案是:是的,這樣的FUSE文件系統是存在的。

感謝 Gilles 的建議!

這是一個建議和意見,這並不是 unix.SE 的真正意義所在。

但是,話雖如此,如果您使用的是雲文件系統,您可能想看看 S3QL。在過去六個月左右的時間裡,我一直在大量使用它,它對我來說效果很好。

https://bitbucket.org/nikratio/s3ql/

S3QL 是一個文件系統,它使用 Google Storage、Amazon S3 或 OpenStack 等儲存服務線上儲存所有數據。S3QL 有效地提供了一個動態的、無限容量的硬碟,可以從任何可以訪問網際網路的電腦訪問。

S3QL 是一個符合標準的、功能齊全的 UNIX 文件系統,在概念上與任何本地文件系統沒有區別。此外,S3QL 還具有壓縮、加密、重複數據刪除、不可變樹和快照等附加功能,使其特別適合線上備份和存檔。

您很可能會在您的發行版的包儲存庫中找到一個相當新的版本。但是,如果您能夠獲得最新版本,它確實有許多可能與您的方案相關的錯誤修復。

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