はじめに
最近、ディスクのバックアップ、リカバリ、およびクローン作成に関するいくつかのトピックを取り上げました。読者の何人かはいくつかの質問を思いついた。それらの1つは、BTRFSとRsyncがGrsync、Duplicity、Timeshiftなどのツールを使用してバックアップを試みることでした。このガイドでは、両方の技術的な違いと、どちらが他方より優れているかについて説明します。このガイドではDebian10BusterEditionを使用しています。同じものを使用する必要はありません。
Rsync
Rsyncは、ローカルをバックアップし、サーバーからローカルディスクにリモートファイルを同期するための、ディスク上のフットプリントが小さいユーティリティです。 MBRパーティションとGPTパーティションの両方をサポートするだけでなく、Ext4などのいくつかのファイルシステムもカバーします。
Rsyncユーティリティを使用して、またはRsync上で動作するサードパーティツールを使用してバックアップを作成すると、共通ファイルが定期的なバックアップ間で共有されます。これは、膨大なディスク容量を節約するのに役立ちます。
Rsyncはどこにでもデータを保存できます。これは、外部ディスクに本番システムとは異なるファイルシステムがある場合、Rsyncが両方にデータを保存することを意味します。 Rsyncの最大の欠点は、BTRFSよりもわずかに遅いことです。
Rsyncの例
デモ1.プッシュ操作
Rsyncを使用してプッシュ操作を実行する方法は次のとおりです。
$ rsync local_file_path [email protected]:remote_file_path
この例では、ローカルディレクトリをリモートフォルダにプッシュしています。
リモートサーバーからローカルシステムにファイルまたはディレクトリをプルするデモがもう1つあります。
デモ2.プル操作
$ rsync [email protected]:remote_file_path local_file_path
この操作では、ユーザーはリモートファイルをローカルマシンにプルするだけで、適切なバックアップが作成されます。
デモ3.帯域幅をいくらか節約する
今、私はここで懸念を持っています。ローカルバックアップとリモートバックアップを作成するときに、帯域幅を節約したいと思います。 Rsyncは、そのような操作を実行するための完全な制御を提供します。
$ rsync -av -e ssh --max-size='1M' /src/ [email protected]:/path/to/dst/
この例では、最大1MBのサイズのファイルのみを明確にフェッチしています。これにより、アーカイブで利用可能な大きなファイルを回避できます。
BTRFS
BTRFSはBetterFileSystemの略です。プログラムであるRsyncとは異なり、BTRFSは独自のファイルシステムです。これがそれらの違いを生むものです。次の例でこれを理解してみましょう:
Ext3またはExt4ではなくBTRFSファイルシステムを使用してディスクをフォーマットした場合は、BTRFSメソッドを使用してデータを同じディスクに保存できます。
BTRFSを使用して作成されたバックアップは、時間を節約します。 Linux上の同様のファイルシステムにデータを保存しているため、より高速です。 BTRFSファイルシステムがない場合は、バックアップを保持するためにBTRFSパーティションを作成する必要があります。
システムをBTRFS用に設定している場合は、BTRFSバックアップオプションを使用することをお勧めします。このシナリオでは、Rsyncはあなたを失望させます。
BTRFSの例
上記の議論で、BTRFSはコンテキストのバックアップシステムではないことを学びました。むしろそれは本格的なファイルシステムです。デバイスで設定する方法は次のとおりです。
BTRFSはプリインストールされていないため、通常は手動でインストールする必要があります。
インストールすると、システムでBTRFSを実行する機会があります。例:
例1.システムのスナップショットを作成します
$ btrfs subvolume snapshot ‘/btrfs/SV1’ in ‘/btrfs/SV1-snap’
これにより、完全なファイルシステムボリュームのサブボリュームスナップショットが作成されます
例2.システムの読み取り専用スナップショットを作成します
$ btrfs subvolume snapshot –r ‘/btrfs/SV1’ ‘/btrfs/SV1-rosnap’
どちらの例も、一方のプログラムがコピーしているのに対し、もう一方のプログラムは使用可能なディスクからストレージブロックを作成していることを示しています。
結論
このガイドでは、RsyncとBTRFSの違いについて説明しました。 1つはバックアップを作成するプログラムで、もう1つはファイルシステム全体です。これで概念が明確になり、両方のユーティリティを非常に効率的に使用できるようになることを願っています。