Skip to content
Windows PCから外付けドライブへ定期的にデータをコピーし、別のドライブも保管する様子をアイペンちゃんとリスが確認しているイラスト

Robocopyで定期バックアップ Windows標準機能で万が一の事故に備える

業務用PCのデータは、故障、誤削除、落雷、盗難、ランサムウェアなどで突然使えなくなる可能性があります。Windows標準のRobocopyとタスクスケジューラを組み合わせれば、追加ソフトを購入せず、指定したフォルダーを外付けドライブやNASへ定期的にコピーできます。

ただし、Robocopyはファイルをコピーする道具です。外付けドライブを常時接続したままにするだけでは、ランサムウェアや操作ミスの影響がバックアップ先にも及ぶ場合があります。定期コピーに加えて、ログ確認、復元テスト、取り外して保管する別媒体を組み合わせることが重要です。

Robocopyが向いているケース

Robocopyは、Windows 10・11に標準搭載されたコマンドです。フォルダー内のファイルを別の場所へコピーし、2回目以降は追加・更新されたファイルを中心に処理できます。大量の業務ファイルを定期的に複製し、実行結果をログへ残したい場合に向いています。

  • 見積書、請求書、顧客別資料、制作データを外付けSSDへ保存する
  • 社内PCの共有フォルダーをNASへ定期コピーする
  • 写真や図面など、ファイル数が多いフォルダーを追加費用なしで複製する
  • バックアップ結果をテキストログで確認する

一方で、アプリの設定、メール、データベース、会計ソフトのデータなどは、単純なファイルコピーだけでは正しく復元できない場合があります。各ソフトが指定するバックアップ方法を優先してください。

最初に決める4項目

項目決める内容例
バックアップ元守りたい業務フォルダーC:\Work
バックアップ先元データと別の物理媒体E:\Backup\Work
実行頻度失っても許容できる作業時間から決める毎日19時
確認担当ログと復元を確認する人月初に担当者が確認

バックアップ元と先を同じ内蔵ドライブにすると、ドライブ故障時に両方を失う可能性があります。まずは別の外付けSSD・HDDまたはNASを用意します。保存容量は、現在のデータ量だけでなく今後の増加分も見込んで選びます。

安全な基本コマンド

次の例は、C:\Workの内容をE:\Backup\Workへコピーします。実際の環境に合わせて2つのパスを変更してください。

robocopy "C:\Work" "E:\Backup\Work" /E /Z /R:2 /W:5 /COPY:DAT /DCOPY:DAT /XJ /TEE /LOG+:"C:\BackupLogs\robocopy.log"
オプション役割
/E空フォルダーを含むサブフォルダーをコピーする
/Z中断したコピーを再開しやすくする
/R:2失敗時の再試行を2回に制限する
/W:5再試行まで5秒待つ
/COPY:DATデータ、属性、更新日時をコピーする
/DCOPY:DATフォルダーのデータ、属性、更新日時をコピーする
/XJジャンクションを除外し、意図しない循環コピーを避ける
/LOG+:実行結果を既存ログへ追記する
/TEE画面とログの両方に結果を表示する

Robocopyの既定値は、コピー失敗時に100万回再試行し、各回30秒待ちます。障害時にタスクが長時間終わらないことを避けるため、定期実行では/Rと/Wを明示する方が管理しやすくなります。

まずテスト実行する

本番データへ適用する前に、小さなテスト用フォルダーで動作を確認します。実際にはコピーせず対象だけを表示する/Lも利用できます。

robocopy "C:\Work" "E:\Backup\Work" /E /L
  • コピー元とコピー先を逆にしていないか
  • 不要な一時ファイルや大容量フォルダーが含まれていないか
  • 必要なファイルが漏れていないか
  • コピー先の空き容量は十分か

バッチファイルを作る

メモ帳で次の内容を作成し、たとえばC:\BackupScripts\daily-backup.batとして保存します。ログ用フォルダーも先に作成します。

@echo off
if not exist "C:\BackupLogs" mkdir "C:\BackupLogs"

robocopy "C:\Work" "E:\Backup\Work" /E /Z /R:2 /W:5 /COPY:DAT /DCOPY:DAT /XJ /TEE /LOG+:"C:\BackupLogs\robocopy.log"

set RC=%ERRORLEVEL%
if %RC% GEQ 8 exit /b %RC%
exit /b 0

Robocopyの終了コードは、一般的なコマンドと異なり、0だけが正常とは限りません。Microsoftの仕様では0~7はコピー済み、差分あり、追加ファイルありなどを示し、8以上は少なくとも1件の失敗を示します。そのため、上の例では8以上だけをタスクの失敗として返します。

タスクスケジューラで定期実行する

Windowsのタスクスケジューラは、指定した時刻や条件でプログラムを自動実行する標準機能です。次の流れでバッチファイルを登録します。

  1. スタートメニューで「タスク スケジューラ」を開く
  2. 右側の「基本タスクの作成」を選ぶ
  3. 名前を「業務データ定期バックアップ」などにする
  4. トリガーを「毎日」にし、業務終了後の時刻を指定する
  5. 操作で「プログラムの開始」を選ぶ
  6. プログラムまたはスクリプトに作成したバッチファイルのフルパスを指定する
  7. 設定を完了し、右クリックの「実行」で手動テストする

ノートPCでは、指定時刻に電源が切れていたり、外付けドライブが接続されていなかったりすると実行できません。タスクのプロパティで「スケジュールされた時刻にタスクを開始できなかった場合、すぐにタスクを実行する」などの条件を確認し、自社の利用状況に合わせます。

/MIRは便利だが、最初は使わない

/MIRはコピー元とコピー先を鏡のように一致させる機能で、/Eと/PURGEを組み合わせた動作です。コピー元で削除されたファイルは、コピー先からも削除されます。誤削除や暗号化されたファイルの状態まで反映すると、復旧用のデータを失うおそれがあります。

そのため、バックアップの初期構築では削除を伴わない/Eを基本にします。容量管理のために/MIRが必要な場合は、別の世代バックアップを確保し、/Lで削除対象を確認してから導入してください。

毎日・毎月の確認項目

毎日または実行ごと

  • タスクスケジューラの「前回の実行結果」を確認する
  • ログ末尾に失敗がないか確認する
  • コピー先の空き容量を確認する
  • 外付けドライブが正しく認識されているか確認する

毎月

  • バックアップ先からテスト用フォルダーへ数ファイルを復元する
  • Word、Excel、PDF、画像などを実際に開けるか確認する
  • 担当者が変わっても復元手順を実行できるか確認する
  • 保存対象に新しい業務フォルダーが増えていないか確認する

ログが残っていても、必要なファイルを復元できなければバックアップとして役立ちません。「自動実行できた」ではなく「復元して業務を再開できた」を完了条件にします。

事故に備えるなら3-2-1で考える

Microsoftは、3つのコピーを、少なくとも2つの場所に保存し、そのうち1つをオフラインにする3-2-1の考え方を案内しています。たとえば次の構成です。

  • 1つ目:業務PCの元データ
  • 2つ目:Robocopyで毎日更新する外付けSSDまたはNAS
  • 3つ目:週1回交換し、通常は取り外して別の場所に保管する外付けドライブ

常時接続されたバックアップ先は自動化しやすい一方、ランサムウェア、誤操作、過電圧の影響を同時に受ける場合があります。取り外した媒体や変更不能な保管先を追加することで、同時被害を減らせます。個人情報や機密情報を持ち出す場合は、暗号化、保管場所、持ち出し記録、担当者を決めてください。

導入前チェックリスト

  • [ ] バックアップ対象と対象外を一覧にした
  • [ ] コピー元とコピー先が別の物理媒体になっている
  • [ ] テスト用フォルダーと/Lで事前確認した
  • [ ] /Rと/Wを明示した
  • [ ] /MIRの削除動作を理解し、安易に使っていない
  • [ ] ログの確認担当と頻度を決めた
  • [ ] 終了コード8以上を失敗として確認できる
  • [ ] 月1回程度の復元テストを予定した
  • [ ] 通常は取り外す別のバックアップを用意した
  • [ ] 専用ソフトやデータベースは提供元の手順も確認した

まとめ

Robocopyとタスクスケジューラを使えば、Windows標準機能だけで業務フォルダーの定期コピーを始められます。最初は削除を伴わない/Eで小さく試し、ログと終了コードを確認できる状態にします。

そのうえで、外付けドライブを常時接続した1つのコピーだけに頼らず、取り外して保管する別媒体、復元テスト、専用ソフトごとのバックアップを組み合わせます。自動化は保存忘れを減らしますが、実際に戻せることを定期的に確認して初めて、事故に備えた仕組みになります。

公式情報と関連用語

オプションと終了コードはMicrosoft Learn「robocopy」、定期実行の仕組みはMicrosoft Learn「About the Task Scheduler」で確認できます。複数保存先とオフラインコピーの考え方はMicrosoft Learn「Prevent malware infection」を参照してください。サイト内ではバックアップもあわせてご覧ください。

関連リンク