【技】BatchファイルでのWindows Server Backup

kooです。( ノ゚Д゚)ヨッ!
 
TwitterのフォロアーがPCを刷新したらしく、
環境の戻しを面倒と言っていた。
 
え? 手で環境設定?
 
そうらしい・・・(´Д` )
そりゃ、また面倒な。
 
というやりとりで、
Windows7でもお気楽のほほんとベアメタル領域含むシステムバックアップが取れちゃうスクリプト
 

あくまでも 自己責任
※未検証wwww
 
失敗しても、俺しーらねっと。 ヽ(゚Д゚#)ノ

と言っても、基本は1行で済むレベル。
 

wbadmin start backup -backuptarget:%backDir%\ -include:C: -allCritical -systemState -quiet >> d:\winbackup.log

 
ぶっちゃけこれでいい
ただ、変数を使っているので、変数はあらかじめ宣言しておく必要がある。
 
構成としては、
保存先フォルダ:%backDir%
ネットワークドライブも設定できる
backupDir=\\hogehoge01\Y$
とか
backupDir=\\192.168.100.50\Y$
とか。

ただ1回ごとに上書きとかではなく、そのまま毎回加算されていくので、
世代数管理とかもしちゃえばいい。
 

REM backup実行前に、2世代前を削除
for /f "skip=2 delims=:" %%A in ('dir /b /o-n Back*') do rd /s /q "%%A"

こんな感じで。
これだと2世代前を削除するので、常にバックアップ数は2に収まる。
容量に応じて、変更すればいい。
あとは、実行契機だけどね。
 
なので、まとめると
こんな感じでいいかな。
 
※変数は、変更しました。
=========================================

@echo off
CLS
echo.
ECHO WindowsBackup Running now...
echo.
 
REM バックアップ先として、Fドライブを設定
set Include=F
 
REM 1世代前を削除するため、ディレクトリ移動
cd /d %include%:
REM backup実行前に、2世代前を削除
for /f "skip=2 delims=:" %%A in ('dir /b /o-n Back*') do rd /s /q "%%A"
 
REM OSドライブに戻す
cd /d C:
 
echo バックアップを処理実行中。この処理には数分から数十分要する事があります。
echo.
 
wbadmin start backup -backuptarget:%include%\ -include:C: -allCritical -systemState -quiet >> d:\winbackup.log
wbadmin get versions -backuptarget:%include%: > d:\catalog.txt
 
echo バックアップが完了しました。
exit

こんな感じかな。
 
バックアップ自体は、Fドライブに取る。
ログはDドライブ直下に書き出す。
 
こんなもんでしょうね。
※ちなみに、ネットワークドライブでも取れると書きましたが、
 ネットワークドライブを net useコマンドでマウントさせてあげる必要があります。
 そのまま\\hogehoge\d\$ みたいな表記はだめです。
 
一応、ベアメタル領域も取っているので、
OS CD起動の復元でちゃんともとに戻るはず。
※バックアップ対象のFが死んでないという大前提のもと。
 

ツイートツイート

1件のコメント

  1. たまたま、貴方のサイトにたどりつきました(メアドは適当です
    昔の記事ですが、思ったことを。

    自分も同じことしたので、、、

    ネットワークへとる場合
    rdなどはファイル容量によっては失敗します
    これはmoveでbak3→bak_old、bak01→bak02へ、bak2→bak3(3世代の場合)として
    バックアップは常にbak1にとれば何世代でも管理できます。
    これはforでも連続で書いても、、、なんでもいいです。。。

    またcdよりもpushd、popdを利用したほうがよいかと
    これならネットワークでnetuseよりは失敗がありません

    自分は、こんな感じでバックアップソフトを買ってくれなかったお客様の預かりサーバをバックアップしています。

    では

    • とおりすがり さん

      ありがとうございます。
      >rdなどはファイル容量によっては
      4GBの壁でしょうかね。
      大きなファイルを想定していなかったので、特にその辺は意識していませんでした。
      勉強になりました。

      >こんな感じでバックアップソフトを買ってくれなかったお客様の預かりサーバをバックアップ
      状況が目に浮かびます。
      あれを買ってくれれば とか、、、、まぁ、低予算を求められるのは世の常ですからね(´Д` )

コメントを残す

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