
rsync を使用して仮想ボックス VM をバックアップしようとしましたが、失敗しました。ディスク イメージが更新されませんでした。テストとして、vdi ファイルのみで試してみました。仮想マシンは実行されていませんでした。ファイルが非常に大きいため、ディスク領域を節約して高速化するために --inplace オプションを使用します。これを行うには、次の 2 つの方法をテストしました。
- 宛先で実行されている rsync デーモンを使用します。
- 同じシステムに NFS を使用します。
オプション 1 のコマンドは次のとおりです。
rsync -av --delete --partial --inplace --append --progress /src/integration/vdi rsync://rsyncuser@destserver/dest/integration.vdi
オプション 2 に使用されたコマンドは次のとおりです。
rsync -av --delete --partial --inplace --append --progress /src/integration.vdi /nfsserver/dest/integration.vdi
Integration.vdi は両方のシステムで同じサイズでしたが、宛先の変更時刻が古かったです。
どちらのシナリオでも、rsync はファイルが同一であるかのように動作しましたが、両方のファイルに対する cmp (rsync 後) では、ファイルが異なることが示されました。
ここで何が起こっているのでしょうか? ドキュメントには、rsync はファイルの時間とファイル サイズを使用して、ファイルの更新が必要かどうかを判断すると書かれています。サイズは同じですが、宛先が古いので、ファイルの更新が必要だと思います。