ファイルシステム/ディレクトリはマウントポイントをレイヤーにマージします。

ファイルシステム/ディレクトリはマウントポイントをレイヤーにマージします。

ファイルシステムファイル/ディレクトリアクセス層を実装する方法を探しています。

したがって、次のような構造を持つことができます。

/mountPointMerged/
/mountPointLayer1/a/b/c.txt
/mountPointLayer2/a/b/c.txt
/mountPointLayer3/a/b/c.txt

ファイルにアクセスするときに/mountPointMerged/a/b/c.txt2番目のレイヤーがインストールされている場合は、3番目のレイヤーがインストールされていない場合にのみファイルを読み書きできます。

要点は合併が行われるべきです。したがって、次のファイルをこれらのレイヤーに具体的に追加してください。

/mountPointLayer1/a/b/d.txt
/mountPointLayer2/a/b/e.txt
/mountPointLayer3/a/b/f.txt

次の結果を提供します。

ls /mountPointMerged/a/b/
c.txt
d.txt
e.txt
f.txt

ここで生成されたすべての新しいファイルは、/mountPointMerged/最上位のインストール層に書き込まれます。ただし、他のレイヤーには/mountPointLayer2/a/b/c.txt直接アクセスするのではなく、ex.:を介してアクセスできます/mountPointMerged/

なんとかできますか?

答え1

私が見つけた最も柔軟で簡単なオプションはAUFSです。たとえば、次のようになります。

mount -t aufs -o "br=CustomFolderToWriteAt:CustomTopOverriderFolder:CustomInBetweenOverriderFolders:CustomLowestPriorityFolder" none CustomMergedMountPointFolder

CustomFolderToWriteAtには、CustomMergedMountPointFolderに書き込まれるすべての修正が含まれています。touchファイルであっても、そこにこのクラスの完全なコピーが作成されます。

CustomInBetweenOverriderFolders はここに「:」で区切られており、複数のものがある場合があります。

他のカスタムフォルダへの変更は、マージされたCustomMergedMountPointFolderにすぐに適用されます。

関連情報