Windows Vista以降で標準機能の自動バックアップ方法

2016年4月12日

Windowsで使える標準のバックアップ機能。

コントロールパネルから行く方では無くコマンドの方。Vsita以降のWindowsは robocopy というコマンドが新たに追加されているそうな。Vistaを飛ばし7歴2年少々な上、Windows標準機能不信なので知らなかった。

せっかく付いているのでどのような機能か紹介。

今回の記事はバッチファイルやスクリプトなど少し難しい為、PCやWindowsの自称初心者ならばrobocopyの紹介は飛ばしいきなりまとめをどうぞ。

 

robocopyコマンドで自動バックアップする方法

参考にしたページはこちら。

Windowsのrobocopyコマンドでフォルダをバックアップ/同期 - @IT
http://www.atmarkit.co.jp/ait/articles/0704/20/news130.html

同期も可能とは凄い。コマンド実行は問答無用で処理する可能性が高くやや危険度が高い為、まずは本当に@ITの解説通り処理出来るか試してみましょう。

robocopyでテストフォルダ同士を同期

コマンドを打てるようcmdを起動。

cmdを実行

Cドライブ直下へフォルダ名 test を作成。

テストフォルダの作成

@ITの説明通りコマンドを実行すると下のような表示になり処理完了。

robocopyを手動で実行

ここから¥を半角で書くとバックスラッシュになり分かり難いと思うので¥のみ全角で。コマンドは、

robocopy /mir c:¥test d:¥test

ロボコピーコマンドにmir(ミラーリング、同期)のオプションを指定し、Cドライブ直下のtestフォルダ内を全部Eドライブ直下のtestフォルダと同期。Eドライブのtestフォルダを勝手に作ってくれるか期待したところ自動で生成されておりました。

適当にダミーのフォルダとファイルを作成したrobocopy実行後。

同期

適当なフォルダなどを削除しもう一度robocopyを実行。

削除も同期

同期されております。

何度もコマンド打つのは面倒なので、テスト時はコマンドを一度実行した後にF5キーを押してみましょう。直前のコマンドが丸ごと一発で入力されるはず。 

バッチファイルで自動処理化

それにしても毎回コマンド打つのは面倒なのでバッチファイル化。適当なテキストファイルを作り、以下のように入力。

テスト用バッチファイル

robocopyコマンドの次の行 pause は一時停止。テキストファイルを保存し、拡張子を bat へ変更。※ backup.bat

実行するともちろん動く。

処理後

何かキーを押して上の窓が閉じたなら正常動作。 

ユーザフォルダを指定した本番用バッチ

テストは終わりとし、ガチなバックアップ用へ書き直し。

ユーザフォルダを指定した本番版

%UserProfile% は私のPCでいうと、C:¥Users\1226 の事で、ユーザ名を決め打ちせず起動ドライブの現在のユーザフォルダを指定可能なので汎用性が高くなる。

バックアップフォルダはEドライブ直下の backup とし、最後のオプション /r:0 はエラーが出たならスキップしろ(正確には再試行するな)の意味。これ無しでドキュメントフォルダ内全部同期を実行すると一瞬で詰まってしまうはず。

実行してみると本当にバックアップが始まったので窓を閉じて停止。

バックグラウンドで実行するようVBSで処理

バッチファイルの処理画面は見る必要が無く、タスクスケジューラーで定期的に実行するなら突然窓が開いてしまうので単純に邪魔。

というわけでもう一手間かけ、バッチファイルをVBSで実行しましょう。

VBで隠しつつバッチ処理

テキストファイルを作りスクリプトを書く。¥は全角になっているので変換を。

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run ("C:¥test\backup.bat"), vbhide 

1行目でオブジェクトを作り、2行目でバッチファイルを実行。その際に vbhide で見えなくしてしまえば良いという仕組。拡張子を vbs へ変更。※ backup.vbs

ファイルの置き場所はCドライブのテストフォルダになっている為、場所を変更するなら書き換えましょう。VBSとバッチファイルはいずれも同じフォルダ。

VBSファイルの置き場所

テストフォルダの同期をVBで実行すると上の通り全て鏡写しになり成功。一瞬たりとも黒い窓は出ずに処理完了。画像の上はC、下はEドライブ。

但し、私はVBS良く知らないのでVB版でバックグラウンド処理にした場合、止めたい時にどうやって停止させるのかは分からない。

窓辺さんがコメントで教えてくれそうな気がするので期待。

タスクスケジューラで定期的に自動実行

ここまで脱線して解説するつもりは無いので@ITへ丸投げ。

タスクスケジューラの基本的な使い方(Win7/8.x/10編) (1/2) - @IT
http://www.atmarkit.co.jp/ait/articles/1305/31/news049.html

またはWindowsのシャットダウン前に実行したいなら、バッチファイルの最後に shutdown.exe -s -t 0 を追加するとrobocopyのコマンドが終わり次第、待ち時間0秒でシャットダウン。

robocopy /mir %UserProfile% e:\backup /r:0
shutdown.exe -s -t 0
pause

VB版で実行する際は最後の pause は意味が無いので削除を。

 

Windows標準機能は何か足りないという不満(まとめ)

バッチ、スクリプト書かなくともVista以降ならばWindowsにはグラフィカルで分かり易いバックアップ機能が付いております。

Windows 7のバックアップ機能

上は私のメインPCのWindows 7での画面、他のバージョンもだいたい同じはず。行き方は赤枠内の通りでコントロールパネルから。

使い方はマイクロソフトが分かり易く解説しているので省略。

初心者でもわかる! Windows 7 でバックアップ
https://support.microsoft.com/ja-jp/kb/2666277

但し肝心な部分は2016年4月現在リンクが切れており、初心者には解らないと思うので貼り直しておきましょう。

  1. 特定のフォルダーやファイルを、必要な時にバックアップする方法
  2. 特定のフォルダーやファイルを、定期的にバックアップする方法
  3. パソコン全体を、必要な時にバックアップする方法
  4. パソコン全体を、定期的にバックアップする方法

しかしrobocopyでは強制コピーが出来ないので使用中のファイルのコピーは無理という無難な処理となっており、AppDataフォルダなどバックアップしたい場所がスキップされてしまう。

そして上記リンク先4種類の分かり易いバックアップはいずれもイメージで残す為、バックアップ先のHDDなどがほんのり壊れていた場合は復元出来なくなってしまう可能性が怖い。

というわけで、いずれの方法もやらないよりはマシ程度と考えた方が良いと思われ、少し手間でも他の方法でやるかバックアップ用ソフトの製品の購入をおすすめ。

私がそう感じているだけなので、Windowsのバックアップで良いと思う人はそれでもよろしいかと。robocopyやGUI(分かり易いやつ)で良い人はそれでどうぞ。私はFastcopy信者。

コメント(2)

>robocopy
私も以前はrobocopyでバックアップをとっていたことがありますw

>Vistaを飛ばし7歴2年少々な上
私はVistaは半年しか使っておらず、すぐに7に移行しましたw

>窓辺さんがコメントで教えてくれそうな気がするので期待。
分かりませんが、「VBS 停止」で調べたらいくつか出てきましたw

スクリプトの開始と停止
https://technet.microsoft.com/ja-jp/scriptcenter/ff707270.aspx

Windows XP Tips 25 - Tips19 暴走したプログラムの停止方法:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20080611/307718/

WSH/スクリプトを中断する方法 - Windowsと暮らす
http://win.just4fun.biz/WSH/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%82%92%E4%B8%AD%E6%96%AD%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95.html

WSH - 一時停止(バッチファイルのpause): みズとおかズ
http://okazu.air-nifty.com/blog/2009/08/wsh---pause-9d3.html

どれが正解かは知りませんがw

>私はFastcopy信者。
私もFastcopy派ですw でもDドライブ(内蔵HDD)からFドライブ(外付けHDD)へバックアップを取ろうとすると、保存先がFastcopyのプログラムがあるフォルダーになってしまう罠がありますw Fドライブ(外付けHDD)にバックアップを取る場合はFastcopyをFドライブ(外付けHDD)にインストールしなければならないw

>バッチファイルの処理画面
私はあのDOS窓、ぼーっと見ているのはけっこう好きですね。※ただし暇な時に限る。

> vbhide で見えなくしてしまえば良い
とりあえず動いている事を確認したいなら「vbMinimizedNoFocus(最小化でフォーカスしない)」でしょうか。非表示だと作業を邪魔しませんが、個人的には何となく動作を目で確認したい派です。


現在はバックアップソフトを使用していませんね。手動コピーでバックアップしています。

コメントする ※要ユーザ登録&ログイン

BTOパソコンメーカー比較

パソコン工房

高性能: ★★★★★ 保証: ★★

コスパ: ★★★★★ 安定: ★★★

初心者: ★★★★

性能とパーツの相場がある程度わかる人なら標準構成が多いのでコスパ重視で選びやすい。同じに見える同じ価格でも仕様の違いがどうなのか判る人には最適。

DELL

高性能: ★★★☆☆ 保証: ★★

コスパ: ★★☆☆☆ 安定: ☆☆

初心者: ☆☆☆☆

10年以上前まではDELL=初心者向けの安いパソコン、それはもう通用しておりません。クーポン適用後が適正価格だと見抜けるパソコン詳しい人向け、または大人買いで割安になる法人向け。

日本HP

高性能: ★★★☆☆ 保証: ★★

コスパ: ★★★☆☆ 安定: ★★

初心者: ★★★☆☆

コスパと性能以外にも見た目も重視したいならHPのノートも選択肢としてアリ。自社製造状態なのでBTO=ダサい印象は払拭されるかと。デスクトップは法人用、ゲーミングは海外向き。

ツクモ

高性能: ★★★★★ 保証: ☆☆

コスパ: ★★★★ 安定: ☆☆

初心者: ☆☆☆☆

昔のマニアックな感は無くなり家電通販のような普通のパソコン屋に。機種が少なく特徴的な少数精鋭状態なので選べる人を選ぶ。ヤマダ電機の一部、または自作PCのパーツ屋さん。

フロンティア

高性能: ★★★☆☆ 保証: ☆☆☆

コスパ: ★★★★ 安定: ☆☆☆

初心者: ★★★☆☆

フロンティア神代の解散後、現所長のパワハラがひどいとタレコミが複数あり、私から内情を運営会社へ伝えると逆ギレされて私を訴えるぞと謎すぎる返しがあり困惑中。

サイコム

高性能: ★★★★★ 保証: ★★★

コスパ: ★★★☆☆ 安定: ★★★

初心者: ☆☆☆☆☆

PC自作したくない中~上級者向け、昔ながらの2chおっさん御用達な鉄板メーカー。動かない構成でも購入できるので初心者にはおすすめ不能。量産系BTOのようにコスパ悪くならないのでサイコムだけは自由なカスタマイズを激しくおすすめ。


※ドスパラはパーツの偽装疑いを誤魔化したり取引先を勝手に切る信頼性暴落した事件があり掲載中止(2020.11.26)

※マウスコンピューターは高いぞと書きまくったからか遠回しにリンク削除しろと言って来たので削除(2021.03.28)

勝手に評価シリーズ

結果として宣伝になっていますが依頼されたわけでは無く、依頼されてもやりません。

データ復旧のIUECを勝手に評価
あなたの街の~を勝手に評価
ESETセキュリティを勝手に評価

カテゴリと更新通知

プロフィール

ヒツジ先輩

書いてる人:

BTOパソコンの元修理担当。ハードウェアに超詳しいワケではありませんが、どうしたら故障するのか何となく解るので壊れにくいパソコンを紹介します。