docker嵌套docker,linux內核中union,Linux上的Union mount

 2023-12-01 阅读 30 评论 0

摘要:A union mount顯示單個層次結構中多個目錄(分支)的組合視圖.好的,但我如何在實踐中使用一個,哪一個?docker嵌套docker?許多聯合裝載技術可在現代Linux系統上使用:OverlayFS,aufs,UnionFS,各種基于FUSE的文件系統,……鑒于用例,我如何確定哪一個適合?特別

A union mount顯示單個層次結構中多個目錄(分支)的組合視圖.好的,但我如何在實踐中使用一個,哪一個?

docker嵌套docker?許多聯合裝載技術可在現代Linux系統上使用:OverlayFS,aufs,UnionFS,各種基于FUSE的文件系統,……

鑒于用例,我如何確定哪一個適合?特別是:

linux fdisk命令、>哪些需要在典型系統上進行root訪問? (換句話說,非特權用戶可以創建聯合裝載嗎?)

>哪些可以掛載/(當然有root訪問權限)?

>哪些支持寫入底層分支? (即如果/ foo和/ bar是聯合安裝到/ union,我可以寫入/ foo和/ bar嗎?)

>哪些支持可寫的寫入策略? (例如,我可以將新創建??的文件發送到分支B,即使我在兩個分支上存在文件時從分支A獲取內容嗎?)

>哪些支持依賴于文件的分支之間的優先級順序? (例如,我是否可以在擁有它的所有分支中獲得最新文件?)

用法示例將不勝感激.

請避免專注于特定點的答案.我正在尋找全面的答案,審查可用的軟件(類似于What is a bind mount?).好的答案將得到賞識.

解決方法:

在每個具體點上:

> Root訪問:如果它使用FUSE,它不需要root,如果它不使用FUSE,它需要root,除非你使用任何功能(有潛在危險)或命名空間進行特殊設置.

>掛載/:我假設你的意思是啟動時的根文件系統,在這種情況下,任何以內核模式運行的應該在理論上工作,盡管有些比其他更可靠.大多數LiveCD都是這樣做的,所以我建議尋找有關這個特定點的信息.

>寫入底層分支:這取決于你的意思.如果你的意思是將寫入傳播到已安裝的視圖到下層分支,我不知道.如果您的意思是從主文件系統本身寫入帶外的較低分支,技術上所有三大分支都可以,但它們都需要重新安裝以確保將更改傳播到已安裝的視圖.

>可配置的寫策略:我不是特別了解這一點,但我認為大3(UnionFS,AUFS和OverlayFS)不支持它.

>依賴于文件的優先級順序:我認為這也屬于第三個子問題,并且在那里,我不知道有任何特別支持它.

至于其中每一個的更具體細節:

> UnionFS:據我所知,這是Linux的原始可堆疊聯合文件系統實現.它已經存在很長時間了,很多Linux LiveCD都使用它.它以內核模式運行,并且需要使用上游內核的補丁.

> AUFS:起源于UnionFS的分支,然后變成了它自己的東西.這個嘗試合并主線,并因代碼質量而被拒絕.它在一些發行版的LiveCD中取代了UnionFS,主要是Debian和Gentoo衍生產品.與UnionFS一樣,它以內核模式運行,需要上游內核的補丁.

> OverlayFS:我不太了解這個的最初發展,除了它也支持幾個BSD衍生物.它尤其是Linux內核中的上游覆蓋/聯合文件系統實現.它也以內核模式運行.

> UnionFS-FUSE:這個有點混亂命名的項目實際上與UnionFS無關,除了提供基本相同的功能.它是聯合文件系統中使用最廣泛的FUSE實現,但這就是我所知道的.

> mhddfs:這個奇怪的異常值比傳統的union文件系統更類似于文件粒度raid0實現.它支持根據空間使用情況在多個后備目錄中平衡文件.它也是基于FUSE的.

需要注意的幾個具體事項并非特定于特定實現:

>所有內核選項都有對后備文件系統的限制,最明顯的是不使用網絡文件系統或BTRFS.

>當用作根文件系統時,所有FUSE實現都存在問題.這不是特定于union文件系統的實現,但更常見的是FUSE的問題.來源:https://www.icode9.com/content-3-384701.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/186989.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息