ブロックレベルの重複排除ファイルシステム


8

などの一般的なユーザーデータとその/homeバックアップ用の重複排除コピーオンライトファイルシステムソリューションを探しています。SHA256やTTHなどの安全なハッシュ(衝突の可能性を無視できる程度)を使用して、ブロックレベルでオンライン/インライン/同期重複排除を使用する必要があります。重複ブロックはディスクに触れる必要さえありません。

アイデアは/home/<user>、バックアップを行うために、同じようなファイルシステムを備えた外付けHDDにコピーするだけでよいということです。シンプル。スナップショットのいずれかが破損するとほとんどすべての後続のスナップショットが破壊される増分バックアップをいじる必要がなく、特定のツールを使用してスナップショットを削除または「チェックアウト」する必要がありません。すべては心配することなくファイルブラウザから簡単に実行できます。これがどれほど簡単になるか想像できますか?もう二度とバックアップについて考える必要はありません!

パフォーマンスへの影響は気にしません。信頼性が主な関心事です。が、特定の実装とcpmvそしてscp、ファイルブラウザプラグイン、これらの操作は、彼らが唯一の不在ブロックを転送する必要があるとして、重複がたくさんある場合は特に、非常に高速になります。誤ってFSと統合されていない従来のコピーツールを使用すると、単に時間がかかり、リモートでコピーするときに帯域幅を浪費し、CPUを浪費します。書き直されました)、しかし絶対に何も破壊しないでしょう。(ファイル共有ソフトウェアの中には、FSと統合することでメリットを得られるものもあります。)

これを行うための最良の方法は何ですか?

私はいくつかのオプションを見てきました:

  • lessfs-メンテナンスされていないように見えます。いい?
  • Opendedup / SDFS -Java?これをAndroidで使えますか?!SDFSは何のですか?
  • Btrfs-メーリングリストのアーカイブに浮かぶいくつかのパッチがありますが、実際のサポートはありません。
  • ZFS-うまくいけば、彼らは真のフリー/オープンソースGPL互換ライセンスの下で1日再利用できるようになるでしょう。

また、2年前にEXT4などの一般的なソリッドFSの上で使用されるファイルレベルでFuseを使用してPythonを試してみましたが、Fuse for Pythonは過小評価されており、実装できませんでしたすべてのシステムコール。


ファイルシステムではありませんが、最近リリースされたバックアップツールObnamを確認することをお勧めします。
JanC '10 / 06/12

@JanC:ありがとう、間違いなくバックアップソフトウェアが正しく機能しているようです。これは回避されます。「スナップショットのいずれかが破損しても、ほとんどすべての後続のスナップショットが破壊される増分バックアップをいじる必要はありません。」...ただし、「特定のツールを使用して削除または「チェックアウト」する必要はありません。スナップショット。」間違いなく良い発見です!一部のPythonコードで作業できる可能性があります。:-)
James Haigh

@JamesHaighこのアイデアをUbuntu BrainStormに投稿することもできます。まだ行っていない場合。
Samik

@JamesHaigh Obnamロードマップにあるものの1つは、ヒューズベースのファイルシステムです(ただし、いつそれを期待するかを示すタイムラインはありません)。それは「追加のツールなし」に近づくでしょう。
JanC

1つのバックアップが破損して後者のバックアップが壊れないようにしたい場合は、単に複数世代の増分バックアップを実行します。たとえば、日曜日に完全バックアップを実行し、常に前日に関連する日次差分を実行する代わりに、たとえば水曜日に、日曜日(火曜日ではなく)の完全バックアップに対して増分バックアップを実行します。次に、火曜日が破損している場合、水曜日のバックアップがある場合は、復元時に月曜日と火曜日をスキップするため、気にする必要はありません。
psusi 2013年

回答:


1

これは非常にエンタープライズに聞こえます(高価な場合など)。

datadomainは、データ重複除外を提供します。また、waflファイルシステムを備えたnetappも提供します。しかし、高コストで。

「無料」の代替手段はzfsです。

私によると、「最高」でほとんどのLinuxyの代替手段は、「ブロックレベル」ではなくファイルレベルですが、rsnapshotです。rsyncとハードリンクを使用してバージョニングを管理します。

私は、人々があらゆる種類の厄介なバグを発見するのに十分に長くなかったBtrfsのような新しいファイルシステムを使用するよりも、古い実績のあるツールを信頼しています。


企業?いいえ、それは明白な使いやすさのために、将来的にUbuntuでデフォルトで表示されると予想される種類のものです。私はZFSについて言及しましたが、CDDLであるため、大文字のFでフリーでrsnapshotはありません。ファイルシステムではありません。レガシーファイルシステムにスナップショットのような機能を提供するためのハックであり、「実際の」スナップショットを作成しません(スナップショットはアトミックであることになっています) )、インクリメンタルです(2番目の段落を参照)。インクリメンタルを使用するものではなく、比較的新しいFSを使用したい。
James Haigh、

「ファイルレベル」は少しあいまいだと思いますが、ブロックレベル、バイトレベル、ビットレベルとともにファイルシステムのコンテキストで使用される用語を見てきました。これは、私が意図したコンテキストでした。
James Haigh

1
@JamesHaighによると、フリーソフトウェア財団CDDLは、ライセンス(自由のように)無料ですが、それだけでGPL互換ではありません。つまり、CDDLのコード(公式のZFS実装など)とGPLのコード(Linuxカーネルなど)を合法的にリンクすることはできません。また、Linuxのドライバーは通常モジュールとしてリンクされているため、LinuxベースのオペレーティングシステムでのCDDLサポートを妨げます。
Eliah Kagan

2
Linux上のZFSは(あなたが誰に尋ねるかによりますが)個別に配布されることでこれを回避できます。または、FUSEを使用すると、ファイルシステムの「ドライバー」をユーザー空間で動作させることができます。ユーザースペース自体をカーネルにリンクする必要はありません。また、FUSEバージョンのZFSもあります。したがって、Linuxをカーネルとして使用するUbuntuなどのオペレーティングシステムでZFSファイルシステムを使用するには、複数のオプションがあります。(Debianなどの一部のOSでは、別のカーネルを使用できます。)
Eliah Kagan

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.