クリスマス目前!商品レビューまとめ記事

Windowsでロボコピーバッチを作成してUSBメモリにバックアップ

ども。あいしんくいっと(@ithinkitnet)です。

ワケあって、仕事で使っているノートパソコンを別のノートパソコンに交換する必要が出てきました。
ですが、ノートパソコン交換日までは今のノートパソコンで作業する必要があります。

そこで「移動が必要となるデータをまとめてUSBメモリに入れてデータ移行してやろう」と考えました。

でも、日々作業していくと当然ですが、差分データが発生します。

そこで登場するのが「robocopy (ロボコピー)」となります。

「ノートパソコン交換日にガッツリデータ移行!」となるとさすがに時間がかかりすぎるので、ロボコピーを日次で流してちょこちょこデータ移行して行きたいと思います。

ノートパソコンからUSBメモリにロボコピー

あれこれ考えるのが面倒なので、デスクトップを丸ごと移行対象とし、バックアップしとこうと思います(笑)

ロボコピー環境

OS: Windows 7 Pro
USBメモリ: Transend 16GB (USB2.0)
移行対象データ容量: デスクトップまるごと5GBちょい。
169b9118-0344-4be0-9c6c-e0510dbe2093

※ 職場によってはUSBメモリが禁止されているところもあると思うので、取り扱いは慎重にw

ロボコピー利用時の注意点

ロボコピーを利用する際の注意点をザッと挙げておきます。

  • コピー元、コピー先は間違えない
  • なるべくコピー対象データは減らす
  • コピーエラーは無視する(個人バックアップだしw)

まぁ、当たり前の事ばっかし(笑)

利用するロボコピーコマンド

robocopy <コピー元> <コピー先> <オプション多数>

ロボコピーはオプション多数、なのでコマンドヘルプ見て必要に応じて追加してください。

で、今回はこんな感じで行くことにしますw(適当)
以前も紹介したオプションもありますが、改めて。

robocopy <コピー元> <コピー先> /MIR /R:0 /XX

/MIR・・・ミラーする
/R:0・・・エラーを無視(コピー出来るものだけコピー)
/XX・・・コピー先にだけ存在するファイルとディレクトリを除外

ロボコピーでデータ移行

では、ロボコピーコマンドを実行してみたいと思います。

robocopy C:\Users\hoge\Desktop D:\Backup /MIR /R:0

上記の場合、Cドライブのデスクトップフォルダ以下がDドライブ(USBメモリ)のDesktopフォルダとしてコピーされます。
基本的にはミラーされるんですけど、コピー元で削除したとしても、コピー先では削除されないようにしてます。

※ 大事な事なんでもう一度。くれぐれもコピー元、コピー先の指定は間違えないでくださいね。死ねます(笑)

ちなみに初回実行時は結構な時間がかかりました。
時間にすると30分位でしょうか。
28ccb5f5-0dc7-4a77-ba62-7a68dd43cbef
でも、ロボコピーの真価が発揮されるのは2回目以降。
2分位で終わりました。
cb367803-6b11-4fef-b170-e800c2686a76
ただ、ロボコピーの特性上、「差分が多くなればなるほど比例してコピーに時間がかかる」ということは頭に入れておく必要はあると思います。

面倒なのでロボコピーバッチ化

毎回コマンド入力するのは面倒&間違いのもとなので、こんな感じでバッチ化しておくと便利です。
バッチと言っても単にコマンド並べてるだけですけどね。
何回か使うだけのバッチ処理にエラーハンドリングなんて無駄、無駄、無駄ぁ〜(笑)
例)Robocopyバッチ

set cpy-src=<コピー元のパス>
set cpy-dst=<コピー先のパス>
set logfile=”D:\%date:~0,4%-%date:~5,2%-%date:~8,2%_robocopy.log”
robocopy %cpy-src% %cpy-dst% /MIR /R:0 /LOG+:”%logfile%”

念のため、こんな感じでロボコピーログを出力しています。
66bcd366-02b3-4308-a788-ced3e6a884d6

後はこのバッチを日次でコツコツを実行しておけば、当日にフルコピーする手間もなくなるし、データ移行漏れも防げると思います。

差分コピーにはロボコピー

ロボコピーは非常に便利なコマンドなので、ぜひ覚えておいて下さい。

以上、あいしんくいっとでした( ̄(工) ̄)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)