robocopyで自動バックアップ作成

2021年7月30日

自動バックアップ作ろう作ろうと思ってあと回しにしてましたが今日作成しました。

Windows10の標準のバックアップだとNASのデータをローカルのドライブにコピーできず
細かいタスクの指示ができなかったので、コマンドプロンプトからrobocopyを起こして。
タスク管理するという方法です。

備忘録みたいな感じで書いてきます。

①まず、バッチファイルを作ります。

作成方法:
デスクトップ画面で右クリック>新規テキスト作成
名前は任意でいいです。たとえば【backup】など

②コマンドプロンプト文章書き一例ですが私の場合は下記にしています。

いろいろオプションを入れたい人は
Windows+R>cmd>robocopy /?で細かく出ます。

ログファイルの書き出しのためにc:workというフォルダを先につくってます。

robocopy “ここにコピー元のパス" “ここにコピー先のパス" /MIR /R:0 /W:0 /LOG:"c:workbackup.log" /NDL /TEE /XJD /XJF

ここだけ絶対注意してください。
コピー元とコピー先を逆に書くとデータ消えます。

③バッチファイルとして保存

ファイルを保存して拡張子を.batに変更を行います。
拡張子変更がよくわかんない人はコンパネ>エクスプローラーのオプション>表示>登録されている
拡張子は表示しないのチェックをオフにしてください。
名前変更から拡張子を.batに変更
私の場合はc:workというフォルダ作ってるのでそこにバッチファイルを入れておいてます。

[affi id=2]

④タスクの実行を予約する

コンピューターのアイコンを右クリック>管理>タスクスケジューラライブラリ>右クリックでタスクの作成
ここで週何回何時に作成したrobocopyのパッチファイルを起動させるか指示します。
ちなみにユーザーがログオンしているかしていないかにかかわっらずに実行するにします
とバックグラウンド処理になってしますので、
表に出したい場合はユーザーがログオンしている時にのみ実行するにしてください。

つうとこんな感じで動きます。(見せたくないとこは白にしてます)

書きなぐりになりましたがとりあえず自動ファイルバックアップ作成完了

ちなみになんかしりませんが、タスクの実行を編集かけようとするとエラーになります。
違うアカウントを作成してそのアカウントで実行するようにすると回避できるみたいですが、
面倒なので変更する際はいちいち新規のタスク作成してます。

※本日つまづいてたので追記、下記でrobocopyを実行すると、
隠しフォルダの属性が付与されて/MIRオプションで
エラーを吐きます。

状況:
ドライブ→フォルダにrobocopyを実行
すると発生する仕様っぽいです。

発生例)robocopy “J:" “D:NASBKtest" /MIR /R:0 /W:0 /LOG:"D:NASBKownbackup.log" /NDL /TEE /XJD /XJF

[affi id=2]

エラー内容:
エラー 32 (0x00000020) ファイルをコピーしています *:xxxxxxtest.txt プロセスはファイルにアクセスできません。
エクスプローラーでは隠しファイルになっているのでコンパネ→エクスプローラーのオプションから
隠し属性のチェックとシステムファイルの表示をすれば確認できます。

関連記事

https://atl06.com/emmcvhd/