windows serverのバックアップ

全部windows serverの標準ツールでお金かけないでやる。

diskshadow, robocopyを組み合わせるとスナップショットのバックアップがわりと簡単にできる。

手順

1:以下のスクリプト、バッチファイルを用意

(ここでは D: を \\NAS-SV\BackupTest\d にバックアップする仮定で記述しているので適時変更のこと。)

diskshadow_script.txt

set context persistent
set verbose on
#スナップショットのエイリアス作成
add volume d: alias BACKUPDISK
#スナップショット作成
create
#スナップショットをIドライブとして表示
expose %BACKUPDISK% i:
#スナップショットドライブからバックアップするコマンド実行
exec backup_robocopy.cmd
#スナップショットドライブ削除(後始末)
delete shadows exposed i:

backup_robocopy.cmd

REM どこにでもよくあるrobocopy
robocopy i:\ \\NAS-SV\BackupTest\d /MIR /np /r:1 /w:10 /XJ
REM ドライブルートをrobocopyするとなぜか隠し属性がつくのでこれで回避する
attrib -H -S \\NAS-SV\BackupTest\d
verify >nul

shadowbackup.bat

rem echo off
date /t
time /t
cd /d %~dp0
REM 実際に必要な部分はこの1行。ほかは実行時間をログに残すためにやってる。
diskshadow /s diskshadow_script.txt > diskshadow_log.txt
date /t
time /t
pause

2:shadowbackup.batを実行。

参考

robocopy後のコピー先フォルダが隠しフォルダになってしまう