btrfsパーティションのバックアップ/クローン


9

btrfsパーティションをそのまま(スナップショットツリーをCOWとしてマークすることによりスペースを節約するすべての共有構造を含む)、別のパーティションにバックアップすることはできますか?たとえば、btrfsサブボリュームがいくつかあるルートパーティション(/自体のスナップショット)をバックアップしたいとします。

私が考えることができる唯一の方法は、ブロックコピーツールを使用することですddが、私のパーティションは20%しか使用されておらず、定期的にバックアップするつもりなので、非効率的です。私はすでにを使用してすべてを増分バックアップしているrsyncので、これは別の問題の回避策ではありません。のようなツールを使用せずに、btrfsパーティションのビットごとのクローンが必要ですdd

たとえば、ext3がダンプおよび復元ユーティリティを提供していることを知っています。そういうものを探しています。

更新

ライブディスクと同じ方法でバックアップストレージ上のファイルにアクセスできるようにしたい(つまり、バックアップストレージにダンプファイルを保存したくない)ことを明確にするための更新があります。

回答:


6

partcloneは、探しているツールです。

  • BTRFSを含む多くのLinuxファイルシステムをサポートしています
  • 他のファイルシステム(FATやexFATなど)もサポートしています
  • 異なりdd、それはファイルシステムのアロケーション・マップを見ます(例:FATおよびexFATののFATテーブル、BTRFSエクステントマップなど)のみとクローン使用ブロック。

使用パターンに応じて:

  • ソースとバックアップターゲットの両方の黒いデバイスが同じマシンで表示される場合(基本的に両方のディスクが同じコンピューターに接続されている場合)は-b(long --dev-to-dev:)を使用します。
  • または、-cand -r(ロング:--cloneおよび--restore)を使用して、最初にソースマシン上の独自のイメージフォーマットにクローンし、次にバックアップマシン上のイメージから復元します
  • partcloneのマンページによれば、イメージをパイプすることが可能であるため、スペースが不足しているが非常に信頼性の高いネットワークがある場合は、実際のファイルを保存せずにネットワーク経由でパーティションをコピーできるはずです。

問題を処理するための完全に異なる方法は、btrfs sendbtrfs receiveメカニズムを使用することです。

  • これは、ブロックデバイスコピーをセクターに生成しません
  • しかし、両端で正しく参照を提供することにより、参照リンクされた(一部の)ファイル間の参照を維持することできます。

したがって、btrfs自体のメカニズムは(partcloneのような)セクター完全コピーではありませんが、エクステント完全コピーです(rsynv -aSHAXハードリンクされたファイルのみを処理するよりもはるかに優れています)。


1

の出力を、標準入力から読み取るddような、bzip2または他のお気に入りの圧縮プログラムにパイプします。私はこれを、インストールが比較的小さく、最終的に8 GBのファイルになる500 GBのディスクで実行しました。


1
cat /dev/zero > zeroesまだディスク上にあるリンクされていないデータを削除するには、最初に空き領域をゼロで埋める必要があります(例:)。しかし、将来BTRFSがブロックレベルのデータ重複排除を取得する場合、これは機能しなくなる可能性があります。
Wim Coenen

私の質問の更新をご覧ください。
Mansour

1

まだ試していませんが、btrfs-imageこの問題を解決しているようです:

https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-image

更新:これをバックアップとして使用しないでください。コメントありがとうございます。

私はこれを開いたままにし、削除しないので、他の人もそれから学ぶことができます。


2
警告、btrfs-imageはMETA-dataのみをコピーし、ファイル自体のデータはコピーしません。(開発者にコピーを送信して、問題点を確認できるようにするために使用されます。データをコピーするためではありません)。
DrYak 2016年

-2

ちょうどfyi ext2 / 3/4ダンプはあなたがやりたいことをしません...これを行うことができるfsだけが私が知っているntfs(ntfs-3gを使用)とzfsです

ただし、lvmと実験的なシンプロビジョニングを使用してこれを取り除くことができます...

編集:数年後にこのことに戻り、squashfsを使用して任意のファイルシステムでこれを行うことができます...


partcloneは、ntfs-3gでもzfsでもない多くのパーティションに対して正確にそれを行うことができました。
DrYak 2016年

NTFSの@DrYakマウント可能なスパースイメージは、ntfscloneによって確実にサポートされます... linux.die.net/man/8/ntfsclone
Fox

-3

どうやら、そのようなツール(まだ、ATM)はないようです。

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