無料の「Windows Server バックアップ」は使えるか? (1)他方式と比較

Windows Server
スポンサーリンク

Windows Serverの標準ツールとして、「Windows Server バックアップ」が無償で使用できます。これがあれば、市販のバックアップソフトは不要なのか?(不要であってほしい)今回は、私が実運用でこのツールを使用した経験を踏まえて、そのあたりを解説します。

Windows Server バックアップとは?

Windows Server標準のバックアップツールです。標準といっても使用するにはインストールが必要です。「役割と機能の追加」から「Windows Server バックアップ」を選択し、機能の追加を選ぶとインストールできます。詳しい方法は、検索すればたくさん出てきますので、今回は省略します。

他方式との機能比較表

市販のバックアップソフトとの違いは何でしょうか。今回は、Arcserve Japan社の「Arcserve UDP」を挙げてみます。そのほか、robocopyといったコピーコマンドでバックアップをするケースもあるでしょう。それらとの機能比較を表でみてみましょう。

# 機能 市販のバックアップソフト(Arcserve UDP) Windows Server バックアップ コピーコマンド(robocopy)
1 GUI操作

×

コマンドのみ

2 ファイル・フォルダ単位のバックアップ

3 ドライブ単位の高速なバックアップ(ボリュームバックアップ)

×

4 システムのバックアップ(ベアメタル回復)

×

5

ローカルドライブへのバックアップ

 

 └世代バックアップ

×

6 NASや共有フォルダへのバックアップ

市販のNASなど一部不可の場合あり

   └世代バックアップ

×

1世代のみ

7 バックアップ世代数の指定

×

バックアップ先ドライブ満杯まで

×
8 スケジュールバックアップ

曜日指定可能

毎日のみ

×
9 前回バックアップからの変更点のみを保存

ローカルドライブへのバックアップのみ

10 静止点の確保(VSSスナップショット)

たぶん不可

11 バックアップの結果通知 × ×

 

各機能の解説

上の表では、分かったような分からないような…といった感触だと思います。各機能について、およびWindows Serverバックアップでどこまでできるのかを解説していきます。

GUI操作

バックアップ対象や出力先、スケジュールなどの指定を、GUIで操作する機能です。Windows Serverバックアップでは、シンプルな画面で問題なく操作可能です。

ファイル・フォルダ単位のバックアップ

バックアップ対象として、「これとこのフォルダだけをバックアップしたい」という指定の仕方です。Window Serverバックアップでも、もちろん可能です。robocopyでもできますね。

ドライブ単位の高速なバックアップ(ボリュームバックアップ)

例えばDドライブ丸ごとバックアップする機能です。ボリューム単位でバックアップするため、ファイル単位のバックアップよりも高速です。Windows Serverバックアップでも可能で、バックアップ対象を選ぶ際にドライブを指定すると、自動的にボリューム単位のバックアップになるようです。

robocopyでも、バックアップ元に「D:\*」のように指定すればバックアップ自体はできますが、ファイル単位で処理(オープン、クローズ)を繰り返すので、ファイル数が多くなるほど低速になります。

システムのバックアップ(ベアメタル回復)

レジストリなども含めてシステムごとバックアップする機能です。このバックアップから復旧すると、ファイルだけでなく、OSやインストールされたソフトウェアの状態もバックアップ時点に戻ります。これを「ベアメタル回復」や「ベアメタルリカバリ(BMR)」と呼ぶことがあります。

Windows Serverバックアップでもこれは可能です。ベアメタル回復する場合は、OSのインストールメディアでブートして行います。ちなみにArcserve UDPは、ベアメタルリカバリ用メディアを作成して、それでブートして行います。

ローカルドライブへのバックアップ

バックアップデータを自身のEドライブなどに保存することは、どの方式でも可能です(当然ですね)。Windows Serverバックアップでは、このローカルドライブに保存する場合に限り、世代バックアップができます。ちなみにローカルドライブには、USB接続のHDDなども含みます。ただし、共有フォルダをZドライブとして割り当てるといった「ネットワークドライブ」は含みません。

Windows Serverバックアップの世代バックアップは、する・しないの指定はありません。ローカルドライブに保存するバックアップは、2回目以降から自動的に世代バックアップになります。ただし後述しますが、保存先はドライブ単位での指定のみで、世代数は指定できません。

世代バックアップは、例えば「毎日バックアップしているが、3日前に間違って削除したデータを戻したい」というケースで役に立ちます。最新のバックアップデータは、削除した状態でバックアップしているので役に立ちません。それより前の世代に戻すことが求められるわけです。本番システムでは、世代バックアップを行うのが良いでしょう。

NASや共有フォルダへのバックアップ

例えばDドライブのバックアップを、\\192.168.0.100\backup に保存するイメージです。Windows Serverバックアップでは、いろいろ制約があります。

  • 世代バックアップができない
    • 2回目以降のバックアップでも、前回のデータは破棄され、最新の世代のみが保存されます。
    • Arcserve UDPなどの市販バックアップソフトでは、これが可能なのですが、ここが大きな違いです。Windows Serverバックアップのこの制限は、市販ソフトに遠慮しているのでしょうかね。
  • 市販のNASなどにはバックアップできない場合がある
    • バックアップ先として、Linuxベースの比較的安価なNASを指定した場合に、エラーとなることがあります(「ファイル形式をサポートしていない」など)。私の経験では、最近のLinux系NASではほぼNGのように思います。どうしてもNASを使う場合は、Windows Storage Serverを搭載したNASにすれば大丈夫そうです。あるいはWindows OSで作った共有フォルダも問題ないようです。

バックアップ世代数の指定

例えば毎日バックアップするとして、7世代を保持するように指定すれば、過去1週間の任意の日付に戻すことができます。市販のバックアップソフトではそれができます。

Windows Serverバックアップの場合、ローカルドライブに保存する場合に限り、世代バックアップができますが、世代数は指定できません。保存先のドライブの容量が許す限りの世代を持ちます。ドライブが満杯になれば、古い世代が自動的に消えていきます。つまり、バックアップ保存専用ドライブを用意する必要があります。

スケジュールバックアップ

例えば「毎週土曜日の午前2時からバックアップする」といったスケジュール指定機能です。Windows Serverバックアップの場合は、何故か〇曜日といった指定ができないのです。スケジュールは「毎日」だけで、毎日何時にやるか(12:00と23:00、みたいに複数回は可能)という指定しかできません。潔いというか何というか…。

もっともそれはGUIの機能の話で、タスクスケジューラーとwbadminコマンドを使うことで、何とか柔軟にスケジュール指定は可能です。ただし面倒くさいです。

前回バックアップからの変更点のみを保存

世代バックアップの場合、前回からの変更データのみが保存され、保存容量の節約や、時間短縮ができます。増分バックアップとも言いますね。Windows Serverバックアップでは、世代バックアップ(ローカルドライブのみ)の場合、そういう動きをするようです。

静止点の確保(VSSスナップショット)

バックアップは、サーバーが動作中に行われることが多いのですが、データは時々刻々と変わっていくでしょう。そういうデータを、例えば0時から1時間かけて、単純なコピーコマンドでバックアップしたとします。このバックアップデータを復旧した場合、何時時点に戻るでしょうか?答えはバラバラです。1時間のバックアップ処理の中で、0時付近でコピーしたファイルと、1時付近でコピーしたファイルでは、バックアップ時点が異なるのです。これはデータを不整合を招き、問題になる場合があります。

VSSスナップショットというOSの機能を使って、静止点を確保したバックアップをすると、上のケースでは、全てのデータが0時時点に戻るため、データの整合性が保たれます。Windows Serverバックアップでも、市販のバックアップソフトでも、標準でこの機能が使われます。(robocopyは、もしかするとそういうオプションがあるのかもしれませんが不明です)

バックアップの結果通知

バックアップというのは、失敗していてもすぐには気づかないことがほとんどです。そして、いざ必要な時に「1年前から失敗していた」ということが判明すると、致命傷になります。こういうことがないように、日々の運用でバックアップの成否を確認することが重要です。

Arcserve UDPなどの市販のバックアップソフトでは、メールで成功や失敗の通知を行う機能がありますので、確認が簡単です。Windows Serverバックアップの場合、この機能がないため、いちいちツールを開いて結果を確認する必要があります。

まあ、タスクスケジューラとwbadminコマンド、スクリプトを組み合わせることで、通知させることも可能と言えば可能です。でも面倒くさいです。

結局どういう場合に使える?

以上を踏まえて、Windows Serverバックアップが使えるケースは、以下の記事にまとめています。

フィードバック

コメント

タイトルとURLをコピーしました