PCからNASへの定期バックアップをWindows標準機能を使って設定してみたところ、簡単に実現することができました。本記事では、定期バックアップを設定するにあたっての手順について、実際の画面も交えて解説していきます。
- なぜ、PCからNASへの定期バックアップが必要なのか?
- 定期バックアップを実現できるWindows標準機能とは何か?
- Windows標準機能を使って定期バックアップを実現するには、何をすれば良いか?
本記事は、製品を使用した筆者個人の感想を共有するものであり、製品の仕様等について正確・最新の情報を提供するものではございません。製品の仕様等についてはメーカー等による情報を確認いただきますようお願いいたします。
本記事に掲載している手順・画面仕様等は、筆者の利用環境下のものです。利用環境によっては異なる場合がございます。
0. 背景・前提
なぜ、PCからNASへの定期バックアップが必要なのか
NAS(Network Attached Storage)は、ネットワーク接続で利用するファイルストレージです。NASは、同一ネットワーク上の複数のPC・スマホ等から同時にアクセスすることができます。
家庭でも、NASを利用することで、快適なデジタルライフを送ることができます。家庭での利用例について、下記記事で解説しています。
NASを利用している場合、NAS上のファイルに直接アクセスすることが多いと思います。たとえば、NAS上のExcelファイルを直接編集するといったイメージです。
しかし、場合によっては、NAS上のファイルに直接アクセスすると、読み込み・書き込み速度が遅い等の不都合がある可能性があります。たとえば、動画編集において、NAS上のプロジェクトファイルを直接開くと、プロジェクトの読み込みが遅くなる場合があります。そういった場合には、PCローカルディスク上のファイルで作業を行って、ファイルをNASに定期バックアップすることで、作業の効率性とNASによるデータの共有・保護を両立させることができます。
筆者の利用環境について
私は、Synology製NAS「DS1621+」を使っています。
今回、Windows PCからSynology NASへの定期バックアップをすることにしました。
機器 | フォルダパス | |
---|---|---|
バックアップ元 | PC(Windows 10 Pro) | D:\test |
バックアップ先 | Synology DS1621+ | \\(NAS IPアドレス)\test\testBackup |
1. バックアップ方法の検討
今回、定期バックアップ方法として、Windows標準機能であるrobocopyとタスクスケジューラを使うことにしました。
robocopyについて
robocopyは、Windows標準のデータコピー機能です。コマンドプロンプト上やバッチファイル上で実行することができます。コピー元フォルダとコピー先フォルダのフォルダパスを指定することで、コピー元フォルダからコピー先フォルダへデータをコピーできます。
タスクスケジューラについて
タスクスケジューラは、Windows標準の機能で、定期的にプログラムを実行するように設定することができます。たとえば、今回の場合は、robocopyバッチファイルを定期的に実行するように設定することで、定期バックアップを実現できます。
2. バックアップの設定手順
バックアップ元のWindows PC上で、定期バックアップの設定をしていきます。
① robocopyバッチファイルを作成する
まず、空のバッチファイルを作っていきます。
空のテキストファイルを作成した後、拡張子を「.bat」に変更します。
バッチファイル内容を編集していきます。
空のバッチファイルを右クリックします。右クリックメニュー >編集
をクリックすると、メモ帳が起動します。メモ帳上でrobocopyコマンドを入力し、上書き保存します。
robocopy 【バックアップ元フォルダパス】 【バックアップ先フォルダパス】 /E /PURGE /R:0 /XJD /XJF /LOG:【ログファイルパス】
robocopyコマンドでは、必要に応じてオプションを設定できます。今回設定しているオプションの内容は下表の通りです。
オプション | 内容 |
---|---|
/E | コピー元フォルダのサブフォルダ(空フォルダを含む)をコピー対象に含む。 |
/PURGE | コピー元フォルダに存在しないファイル・サブフォルダをコピー先フォルダから削除する。 |
/R:(再試行回数) | コピーに失敗した場合の再試行回数を設定する。デフォルトは100万回。デフォルトの場合、コピーに失敗すると長時間の処理が予想されますので、本オプションを設定することを推奨します。 |
/XJD | フォルダの接合ポイントをコピー対象に含まない。本オプションを設定しない場合エラーが予想されますので、設定ください。 |
/XJF | ファイルの接合ポイントをコピー対象に含まない。本オプションを設定しない場合エラーが予想されますので、設定ください。 |
/LOG:【ログファイルパス】 | ログファイルを出力する。 |
他のオプションについては、下記ページが参考になると思います。
robocopyバッチファイルの作成は完了です。
② タスクスケジューラ上の設定を行う
Windows + R で、ファイル名を指定して実行
画面を起動します。「taskschd.msc」と入力してOK
をクリックします。
タスクスケジューラ画面が起動します。
タスクの作成
をクリックします。
タスクの名前とタスクを実行するユーザー/グループの設定をしていきます。
全般
タブにて、名前
欄にタスクの名前を入力します。
ユーザーまたはグループの変更
をクリックします。
タスクを実行するユーザー/グループについては、今回は、Administratorsグループに設定します。
選択するオブジェクト名を入力してください
欄に「administrators」と入力し、名前の確認
をクリックすると、Administratorsグループに設定されます。
OK
をクリックします。
タスクのトリガー条件(タスクが実行される条件)を設定していきます。
トリガー
タブにて、新規
をクリックします。
今回は、毎日深夜に実行されるように設定しています。
robocopyバッチファイルが実行されるように設定していきます。
操作
タブにて、新規
をクリックします。
操作
はプログラムの開始
を選択します。
プログラム/スクリプト
は、参照
からrobocopyバッチファイルを選択します。
開始(オプション)
には、robocopyバッチファイルがあるフォルダのフォルダパスを入力します。
OK
をクリックします。
OK
をクリックします。
タスクスケジューラの設定は完了です。
トリガー条件が満たされると、robocopyバッチファイルが実行され、バックアップが行われます。
3. まとめ
今回、PCからNASへの定期バックアップを、Windows標準機能であるrobocopyとタスクスケジューラを使って設定しました。
定期バックアップを簡単に実現することができました。
NASを利用している方の参考になりましたら幸いです。
さらに発展して、下記記事では、PC – NAS間のリアルタイム同期を無料ソフトウェアを使って設定する方法を解説しています。