UnionFSはどのように機能しますか?

UnionFSはどのように機能しますか?

さまざまな記事や Wikipedia の説明を見てきましたが、意味が理解できません。これまでのところ、UnionFS はディレクトリのユニオン ビューを提供するモジュールであることを理解しています。これは、マウントされているディレクトリの上のレイヤーに存在します。UnionFS にはマウント ポイントがありません。

私が混乱しているのは、UnionFS が統一された方法で何を表示すべきかをどうやって知るのかということです。

答え1

UnionFS は、デバイス レベルではなくディレクトリ レベルで動作するため、マウント ポイントがありません。既存のマウント ポイント上にあり、各マウント ポイントはブランチである可能性があります。たとえば、読み取り専用の ISO9660 CD-ROM ファイル システム上にベース レイヤー (または適切な用語を使用すると、ルート ファイル システムを持つ低優先度レイヤー) があり、RAM ディスク上にブランチがあります。各ブランチには優先度が割り当てられ、優先度の高いブランチは優先度の低いブランチをオーバーライドします。

ディレクトリが 2 つの下位ブランチに存在する場合、Unionfs ディレクトリの内容と属性は、2 つの下位ディレクトリの組み合わせになります。

ファイルが 2 つのブランチに存在する場合、Unionfs ファイルの内容と属性は優先度の高いブランチのファイルと同じになり、優先度の低いブランチのファイルは無視されます。

最後に、重複がある場合は、簡素化のために重複ディレクトリが非表示になります。

Linuxジャーナルかなり包括的な記事があるunionfsの仕組みについて、簡単な説明以上のものが欲しい場合

答え2

VFS 操作は、基盤となるファイルシステムの VFS レイヤーにコールバックする小さなスタブです。そのため、たとえばディレクトリを読み取る場合、基盤となるファイルシステムのディレクトリを読み取り、ファイル リストをマージします。

関連情報