web-dev-qa-db-ja.com

増分バックアップを実行するためのROBOCOPYコマンド

私はROBOCOPYのドキュメンテーションに圧倒されています。自分のローカルファイルをネットワークドライブ(M)に増分バックアップしたい。ログファイルを使用せず、画面に表示されるテキストをできるだけ少なくして、できるだけ早く実行したいと思います。私のファイルはすべて、1つのフォルダー(MyFolder)内のどこかにあり、そこには多数のサブフォルダーが入れ子になっています。 「増分」とは、「新規または変更されたものだけをコピーする」という意味です。移動先の履歴ファイルを削除したくはありませんが、ファイルを変更した場合は新しいバージョンのみが必要です。ファイルを変更していない場合は、既存のバックアップファイルに上書きしたくありません。以下は正しいですか? (Win7 Enterpriseを実行しています。)

robocopy C:\MyFolder M:\MyFolder /z /np /xo /e

Robocopy以外には何も提案しないでください。何もインストールすることはできません。セキュリティについては気にしません。そのための人がいます(欲しいかどうかにかかわらず)。 ;-)

28
dmm

私は数年前から次のスクリプトの変種を使用してきました。

robocopy C:\source M:\destination /MIR /FFT /R:3 /W:10 /Z /NP /NDL

パラメータ説明

  • /MIRオプション(/E /PURGEと同等)は "mirror"を表し、最も重要なオプションです。ソースフォルダを「マスタ」と見なし、ターゲット側での変更をすべて上書きします。これはバックアップに便利な設定です。

  • /FFTは、ファイルのタイムスタンプを比較するときに2秒の違いがあるため、非常に重要なオプションです。そのため、コンピュータとバックアップデバイスの間のわずかなクロックの違いは関係ありません。これにより、ファイルの変更時刻が正確に同期されていなくても、変更されたファイルのみがコピーされます。

  • /R:3は、接続が失敗した場合の再試行回数を指定し、/W:10は再試行間の待機時間を10秒に指定します。これらはネットワークを介してバックアップを行うときに便利なオプションです。

  • /Zは「再起動モード」でファイルをコピーするので、途中までコピーしたファイルは中断後も継続できます。

  • /NP/NDLはデバッグ出力を抑制します。さらに出力量を減らすために/NS/NC/NFLを追加することができます(詳細については ドキュメント を参照)。しかしながら、私は最初の実行の間にいくつかのデバッグ出力を印刷して、すべてが期待通りに機能していることを確認することを勧めます。

他のユーザーによって言及された追加の有用なパラメータ

  • /XJDはディレクトリ、バックアップ中の無限ループのような問題を引き起こすかもしれないシンボリックリンクのための "junction point"を除外します。詳細については、 Brian のコメントを参照してください。

  • /MT[:N]はマルチスレッドを使用しており、多くの小さなファイルの転送を高速化することができます。 Nの場合、通常のマシンで実行されるコア数の2〜4倍の値になります。元の質問で Zoredache でコメントされています。

グレンジャーのコメントに応えて編集:

ソース側ではなく、デスティネーションには存在するファイルを本当に保持したい場合は、単に/MIRオプションを/Eに置き換えます。ただし、増分バックアップに宛先を使用したい場合は/MIRを使用することを強くお勧めします。そうでないと、移動元で名前変更または移動されたファイルが移動先に散らばってしまい、重複することになります。私は通常、自分のソースフォルダツリーの1:1のコピーを含むサブフォルダ「バックアップ」を宛先に作成します。そうすれば、バックアップフォルダの横にある履歴ファイルを保存したまま、後で安全に削除または再編成することができます。

38
pederpansen

私は以下を使うのが好きです。

robocopy "C:\Users\<user>" "F:\robocopy\<user>" /XJD /R:0 /XA:SH /E /ZB /XO /XD "Downloads" "AppData" /LOG:robocopy.log /TEE

私はこれを管理者として実行しているので、バックアップモード(/bオプション)は使用中のファイルのコピーを作成することができます。

バックアップの増分性に関係のない他のオプションは次のとおりです。

バックアップからディレクトリを除外するための/XD

接合点を除外するための/XJD( "My Music")。

失敗した試行の再試行を0に設定する/R:0

隠しファイルとシステムファイルをスキップする場合は/XA:SH

できるだけ多くのログ情報を削除するには、以下のオプション/NP /NS /NDL /NFL /NCを追加します。

8
Vince