Btrfsパーティションをそのまま(スナップショットツリーをCOWとしてマークすることでスペースを節約するすべての共有構造を含む)別のバックアップにバックアップすることは可能ですかたとえば、btrfsサブボリュームがいくつかあるルートパーティション(/自体のスナップショット)をバックアップしたいとします。
私が考えることができる唯一の方法は、dd
のようなブロックコピーツールを使用することですが、パーティションが20%しかいっぱいでなく、定期的にバックアップするつもりなので、これは非効率的です。私はすでにrsync
を使用してすべてを段階的にバックアップしているので、これは別の問題の回避策ではありません。 dd
などのツールを使用せずに、btrfsパーティションのビットごとのクローンが必要です。
たとえば、ext3がダンプおよび復元ユーティリティを提供していることを知っています。それが私が探しているようなものです。
[〜#〜] update [〜#〜]
これは、ライブディスクと同じ方法でバックアップストレージ上のファイルにアクセスできるようにしたい(つまり、バックアップストレージにダンプファイルを保存したくない)という事実を明確にするための更新です。
partclone は、探しているツールです。
dd
とは異なり、ファイルシステム割り当てマップ(例:FATおよびexFATのFATテーブル、BTRFSエクステントマップなど)を調べ、使用されたブロックのみを複製します。使用パターンに応じて:
-b
(長い:--dev-to-dev
)を使用します。-c
および-r
(長い:--clone
および--restore
)を使用して、最初にソースマシン上の独自のイメージフォーマットにクローンし、次にバックアップ上のイメージから復元します機械この問題を処理するまったく異なる方法は、btrfs send
およびbtrfs receive
メカニズムを使用することです。
したがって、btrfs自体のメカニズムはsectorの完全なコピー(partcloneとは異なり)ではありませんが、extent完全なコピー(ハードリンクされたファイルのみを処理するrsynv -aSHAX
よりもはるかに優れています)。
まだ試していませんが、btrfs-image
はこの問題を解決しているようです:
https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-image
更新:これをバックアップとして使用しないでください。コメントありがとうございます。
私はこれを開いたままにし、削除しないので、他の人もそれから学ぶことができます。