web-dev-qa-db-ja.com

マウント中にddを使用してディスクのクローンを作成する-リスク?

Ddを使用してハードディスクのクローンを作成します。マシン上のプロセスを継続的に存続させたいので、ファイルシステムがまだマウントされている間にこれを実行したいと思います。これは「理想的な」方法ではないことを理解していますが、グーグルからも可能であるようです。

クローンはバックアップとして使用されています。ハードディスクに障害が発生した場合、新しいハードディスクにイメージを書き戻したいのですが。実行中のOSは、複製したいディスク上にあります。

私が実行しているプロセスは、ディスクI/Oを実行しますが、クローンを作成するディスクでは実行しません。私の知る限り、この操作を行っている間は、OS /システムプロセスのみがディスクに対して読み取りまたは書き込みを行っています。私が知りたいのは、この軽い使用がクローン画像全体を台無しにする可能性があるかどうかです。 ddによって読み取られるときに書き込まれているファイルがいくつか破損する危険性があると思いますが、バックアップを破壊する可能性がどれほどあるかはわかりません。誰かが洞察を共有できますか?

それをディスクに入れて起動しようとするのではなく、イメージの整合性を確認する方法はありますか?

ありがとう!

6
alexandicity

運がよければ、コピーをマウントしようとするとすぐにファイルシステムの破損が検出されます。運が悪い場合は、後で検出されます。

コピー中に変更されたファイルを除いて、ファイルシステムの一貫したコピーを取得することもできます。しかし、私はそれに頼りません。ファイルを作成、削除、または移動しない限り、ext4で動作する可能性があるため、ディレクトリは変更されません。

もちろん、読み取り専用でマウントされたファイルシステムをコピーすると、すべて問題なく動作します。それ以外は dd を使用しないでください。代わりにcatを使用してください。

ディスクのクローンを作成するには、いくつかの信頼できる方法があります。破損を実質的に保証するものではなく、これらの1つを選択してください。

  • btrfs など、一部のファイルシステムはクローン機能を提供します。 ext4はそうは思いません。
  • ファイルシステムがLinuxのネイティブパーティションスキーム、つまり [〜#〜] lvm [〜#〜] ボリューム上にある場合、LVMスナップショットを作成できます。これには、ファイルシステムをMBRやGPTなどの他のパーティション構成に直接配置するのではなく、LVMを使用する必要があります。きれいにアンマウントされなかったファイルシステムが残りますが、ある時点でのオリジナルの一貫したスナップショットを表しています。
  • RAID-1アレイにファイルシステムを取得できる場合は、アレイにメンバーを追加し、同期するのを待って、新しいメンバーを切り離すことにより、クローンを作成できます。ここでも、スナップショットは一貫していますがクリーンではありません。 既存のファイルシステムの周りにRAID-1ボリュームを作成できます ですが、ファイルシステムを128kB縮小するためのオフライン手順が必要です。
  • ファイルレベルのバックアップを作成できます。ファイルのコピーには時間がかかるため、ファイルシステムの一貫したビューは得られませんが、少なくとも、バックアップ中に変更されなかったすべてのファイルが正しくバックアップされることが保証されます。

サーバーの実行中にddを実行しても害はありません。バックアップの整合性は、主にサーバーの動作と、パーティションがホストしているものに依存します。

ほとんどの場合、静的コンテンツにはまったく問題がありません。DBパーティションまたはログパーティションにいくつかの問題があると予想されます。 DBパーティション上のDBサーバーを停止することをお勧めします。

トランザクションベースのファイルシステムもバックアップしている場合、バックアップはすぐに回復するはずです。

ddはほとんどの場合、一部のサーバーをそのままバックアップするために使用できますが、より高いレベルでファイルのバックアップを行う必要もあります。

ddは代替クローンとして非常にうまく機能しますif代替メディア用にサーバーが起動され、アクティビティはまったくありません。

前の投稿にあるように、ddを使用する特別な必要がない限り、そこには無料で商用のより良い代替案があります。

いくつか例を挙げると:

クローンジラ
システムイメージャ
ダンプ/復元

1
Rui F Ribeiro

ユーティリティddは本当に基本的なツールです。それはあなたがそれを指すものの生のバイトレベルで動作します。この結果、何かがファイルに書き込んでいる場合、ファイルが書き込まれている間にファイルをコピーする可能性があり、ファイルが破損している可能性があります。

これを安全に行うために必要なことは、すでにさまざまなバックアッププログラムに実装されています。これらのいずれかを使用するのが最も簡単です。

0
Hack Saw