web-dev-qa-db-ja.com

Unionfs vs Aufs vs Overlayfs vs mhddfs、どちらを使用するか

ユーザーが複数のファイルシステムを同時に互いの上にマウントできるようにするユニオンファイルシステムについてランダムに読んでいます。

ただし、どちらを使用するか(Unionfs vs Aufs vs Overlayfs vs mhddfs)を決定するのに問題があり、その理由に関する具体的な情報がどこにも見つからなかったのはなぜですか。たとえば、overlayFSが主流のLinuxカーネルで採用されていることは知っています。誰かが私にいくつかの視点を与えてくれるとありがたいです。

また、LVMがすべてのドライブをフォーマットする必要があるという事実を除いて、LVM( 別の質問 でユーザーが推奨)またはRAIDセットアップのようなものよりもユニオンファイルシステムの考えられるユースケースを見つけることができませんすでにドライブに貴重なデータがある場合は、望ましくない場合があります。

15
David Okwii

ここにいくつかの考えがあります-私はまだこれを学んでおり、行くにつれてこれを更新します。

ユニオンファイルシステムの選択方法

これを見るには2つの方法があります。

  • それぞれの機能をどのように比較しますか?
  • いくつかの一般的な使用例について、どちらを選択すればよいですか?

Unionfs/unionfs-Fuse/overlayfs/aufs/mergerfsを比較します。後者はmhddfsの代わりです。

それぞれの特徴

開発状況

ディストリビューション/カーネルサポート

カーネルモードとユーザーシステムモードのファイルシステムがあり、後者はFuseで実行されます。カーネルモードのものはオーバーヘッドが少ないですが(コードがユーザー空間とカーネル空間を切り替えるときにオーバーヘッドがあります)、Linuxカーネルで唯一 現在サポートされている overlayfs です。 。ユーザーモードのファイルシステムは、ディストリビューションのパッケージ化が簡単です。

  • unionfs および aufs カーネルパッチが必要
  • unionfs はDebianによって配布されていません(残りは配布されています)
  • unionfs-Fuse および mergerfs はFuseに基づいているため、カーネルに追加のモジュールを用意する必要はありません
  • overlayfs は3.18(Debian Stretch)以降カーネルの一部となっています

書き込み時にコピー

これは、以下のLive CDの使用例に関連しています。

  • mergerfs には書き込み時にコピーがありません
  • 他の人はする

ユースケース

読み取り専用ルート/ Live CDの使用例

アイデアは、Linuxシステムの読み取り専用のCD-ROM /パーティションを用意することです。ユニオンファイルシステムは、読み書きシステムのように見えるので、変更を加えることができます。読み取り/書き込みファイルシステム(たとえば、tmpfs RAM disk))があり、ユーザーが行った変更の「デルタ」を保存しますが、完全なスナップショットは保存しません。

ここでは、任意のユニオンファイルシステムが行います。

Dockerの使用例

これが主な使用例であることは認識していますが、詳細はわかりません。誰かがこれについてガイダンスを提供できますか?

ハードディスクのマージ

たとえば、異なるファイルシステムに/homeディレクトリの2つのセットがある場合があります。または、2台目のハードディスクを使用してホームコンピューターをアップグレードしていて、単一の論理ボリュームが必要な場合があります。

これは実際にコピーオンライトが必要ない場所なので、mergerfsが最善の選択です。

ユニオンファイルシステムとディスクプーリング用のLVM

Unionファイルシステムでは実現できるが、LVMでは実現できないユースケースをいくつか挙げます。

既存のシステムを2番目のディスクでアップグレードする場合、mergerfsのようなものが良いかもしれません。LVMは最初のハードディスクを再フォーマットする必要があり、そのためその上のデータを破棄するためです。ユニオンファイルシステムはこのステップを回避します。

LVMはファイルを2つの物理ハードディスクに分割する可能性があるため(RAID 0を想定)、1つのハードディスクが故障するとファイルが失われます。

たとえば、一部のユーザーは、/homeディレクトリをUSBスティックに保持して持ち帰ることができます。

2つの物理ディスク上の1つの仮想パーティションの使用例では、LVMを使用すると、ファイルがいずれかのディスクに保存されるかどうかを心配する必要はありません。 mergefsを使用すると、システムは、使用可能な空きスペースの量に応じて、どちらを使用するかを自動的に選択できます。

4
Bob Mortimer