ファイルサーバーのバックアップ

セキュリティ

ファイルサーバーは、故障に備えて必ずバックアップを行う必要があります。 バックアップの方法は色々ありますが、robocopyを使用する事で比較的簡単に無料で行う方法を紹介します。

以下の例では、ファイルサーバーをミラーリング(複製)で同一ネットワーク内のバックアップ用サーバーやNASにバックアップします。 この構成であれば、故障時はバックアップをそのまま使用して復旧することが可能です。

  1. バッチファイルを作成
  2. タスクスケジューラ―に登録

1. バッチファイルを作成

① メモ帳などのテキストエディタで、次の内容のファイル「backup.bat」を作成する。

set logfolder=ログファイル保存先
set logfile=%logfolder%¥backup_%DATE:/=%.log
robocopy バックアップ元 バックアップ先 /MIR /R:0 /NDL /NP >> %logfile%
forfiles /P %logfolder% /S /D -30 /C "cmd /c del /F /Q @path" >> %logfile%

1行目:ログファイルの保存先フォルダを指定
2行目:ログファイルを日付毎に作成するように設定
3行目:robocopyでバックアップを実行
4行目:30日以上経過したログファイルを削除

② ログファイル保存先、バックアップ元、バックアップ先を環境に合わせて変更する。

ログファイル保存先は、バックアップ元及びバックアップ先とは別のフォルダを指定してください。
また、バックアップ元のフォルダにあるサブフォルダやファイルのすべてが、バックアップ先にコピーされます。

例)D:¥work、¥¥network-PC¥work、"D:¥Program Files"
※フォルダ名に半角スペース等を含む場合は、"(ダブルクォーテーション)で囲む

③ 動作確認を行う。

ファイルを起動(ダブルクリック)すると、そのまま動作するのでログファイルが作成されていて内容が正しい事を確認してください。

robocopyのオプション設定(3行目)

/MIR バックアップ元とバックアップ先をミラーリングします。元と先でファイルが同じ状態になります。
/R:0 コピーを失敗した場合のリトライを0回にします。コピー失敗でリトライを繰り返しいつまでも終わらない状態を回避します。
/NDL ディレクトリ名をログに記録しません。ログがスッキリします。
/NP コピーの完了率を表示しません。少し処理速度が速くなります。

ログファイルの削除の設定(4行目)

/D -30 30日経過したファイルが削除対象となります。

2. タスクスケジューラに登録

① バックアップを実行するサーバーやパソコンで、タスクスケジューラを起動する。

タスクスケジューラ

② 基本タスクの作成を選択し、各設定を行う。

基本タスクの作成 名前を任意で設定 例)バックアップ
トリガー 毎日を選択
毎日 開始時刻を任意で設定、間隔は1日
操作 プログラムの開始を選択
プログラムの開始 参照や直接入力で、バッチファイルを選択
タスクスケジューラ設定

③ 動作確認を行う。

タスクスケジューラライブラリから登録した基本タスクを選択し、実行を選択すると起動します。
バッチファイル時の動作確認と同様に、ログファイルが作成されていて内容が正しい事を確認してください。

タスクスケジューラ動作確認

ログオフ中に起動する場合は、バックアップタスクのプロパティから次の設定を行ってください。

全般タブ 「ユーザーがログオンしているかどうかにかかわらず実行する」をONに設定
全般タブ 「最上位の特権で実行する」をONに設定
ログオフ実行