Linuxのユニオンマウント

Linuxのユニオンマウント

共同設置単一階層内の複数のディレクトリ(分岐)の結合ビューを提供します。いいですね。しかし、実際にこれらの1つをどのように使用し、どのようなものを使用しますか?

最新のLinuxシステムでは、さまざまな統合インストール技術を使用できます。ファイルシステムの上書きオブアライアンスFS、FUSEベースのさまざまなファイルシステム、...

ユースケースが与えられたら、どのユースケースが適切かをどのように決定しますか?特に:

  • 一般的なシステムでルートアクセスが必要なのは何ですか? (つまり、権限のないユーザーはフェデレーションマウントを作成できますか?)
  • どのようなものをインストールできますか/(もちろんルートアクセスが必要です)?
  • 基本ブランチへの書き込みをサポートするものは何ですか? (つまり、/fooANDが/barUnionにインストールされている場合はAND/unionに書き込むことができますか?)/foo/bar
  • 設定可能な書き込み戦略をサポートするものは何ですか? (たとえば、両方のブランチにファイルが存在する場合、Aブランチからコンテンツを取得しても、新しく作成されたファイルをBブランチに送信できますか?)
  • ファイルブランチ間の優先順位に依存するサポートは何ですか? (たとえば、そのファイルがあるすべてのブランチから常に最新のファイルを取得できますか?)

使用事例を高く評価いたします。

特定の事項に焦点を当てた質問には答えないでください。利用可能なソフトウェアを確認する包括的な答えを探しています(例:バインドマウントとは何ですか?)。良い答えは報酬を受けるでしょう。

答え1

各特定のポイントに対して、次の操作を行います。

  • ルートアクセス:FUSEを使用している場合はrootが必要ではなく、そうでない場合は機能(潜在的に危険)または名前空間に特別な設定を指定しない限りrootが必要です。

  • インストール場所/:ルートファイルシステムから起動することを意味すると仮定します。この場合、カーネルモードで動作するすべてのファイルシステムは理論的に動作するはずですが、一部は他のものよりも信頼性があります。ほとんどのLiveCDがこれを行うので、ここで特定の事項に関する情報を見つけることをお勧めします。

  • 基本ブランチに書き込む:意味によって異なります。マウントされたビューへの書き込みをサブブランチに伝播するという意味ではわかりません。基本ファイルシステム自体がサブブランチに帯域外書き込みを意味する場合、技術的に3つの主要ファイルシステムすべてがこれを実行しますが、変更がマウントされたビューに伝播されるようにするには、すべて再マウントする必要があります。

  • 設定可能な書き込み戦略:具体的にはわかりませんが、Big 3(UnionFS、AUFS、OverlayFS)はそれをサポートしていないようです。

  • ファイル関連の優先順位:これも3番目のサブ質問に当てはまると思いますが、そこと同様に特に裏付ける質問はありません。

それぞれの詳細は次のとおりです。

  • UnionFS:私の知る限り、これはLinuxの元のスタック型統合ファイルシステムの実装です。長い間使用されており、多くのLinux LiveCDで使用されています。カーネルモードで実行され、アップストリームカーネルのパッチが必要です。

  • AUFS:もともとはUnionFSのフォークでしたが、後で独自のものになりました。この試みはメインラインにマージしようとしましたが、コードの品質のために拒否されました。主にDebianやGentoo派生など、一部のLiveCDディストリビューションでUnionFSを置き換えました。 UnionFSと同様に、カーネルモードで実行され、アップストリームカーネルへのパッチが必要です。

  • OverlayFS:一部のBSD派生物でもサポートされていることを除いて、この製品の元の開発についてはあまり知りません。特に、Linuxカーネルのアップストリームオーバーレイ/ジョイントファイルシステムの実装です。カーネルモードでも実行されます。

  • UnionFS-FUSE: やや混乱した名前のプロジェクトは、本質的に同じ機能を提供する以外に、実際にはUnionFSとは何の関係もありません。これは連合ファイルシステムで最も広く使用されているFUSE実装ですが、私が知っているのはすべてです。

  • mhddfs: これは奇妙な異常値です。これは、従来のフェデレーションファイルシステムよりも、ファイルの細かいRAID-0実装に似ています。スペース使用量に応じて、複数のバックアップディレクトリのファイルバランスをサポートします。また、FUSEに基づいています。

特定の実装に限定されないいくつかの特定の事項は以下の通りである。

  • すべてのカーネルオプションにはサポートされるファイルシステムに制限があり、特にネットワークファイルシステムやBTRFSでは使用されません。

  • すべてのFUSE実装は、ルートファイルシステムとして使用される場合に問題があります。これは連合ファイルシステムの実装に限定されないが、FUSEの一般的な問題である。

関連情報