コマンドプロンプトから Windows Server Backup を設定する: Windows Server 2008 Server Core

SERVER


コマンドプロンプトから Windows Server Backup を設定する

Windows Server 2008 では、システム状態やデータファイルなどを含めた OS 全体を定期的に自動バックアップしてくれる Windows Server Backup という機能が標準搭載されました。

USB 接続や内蔵のローカルハードディスクを使えば、過去のデータも容量が許す限り記録されるので便利です。Apple でいうところの Mac OS X の Time Machine と同じような感覚ですね。

 

Windows Server Core でも利用できるので、さっそくインストールしてみることにしました。

start /w ocsetup WindowsServerBackup

コマンドプロンプトからこのように実行することで、Windows Server Backup のセットアップが始まります。

ちなみに start /w というのは、それに続く "ocsetup" コマンドが実行され終わるのを待つコマンドです。"ocsetup" コマンドはサーバーの役割またはオプションの機能をインストールするコマンドです。

 

上記コマンドを実行すると、何も表示されないまましばらくして実行終了しましたけど、どうやらこれでインストールは完了したようです。

インストール中にエラーが発生したときには、ここで何らかのメッセージが表示されると思います。

 

Windows Server Backup のインストールが終わったら、Windows Server Core ではコマンドプロンプトを使用して、スケジュール設定などのバックアップ設定をして行くことになります。

 

Windows Server Backup のスケジュールを設定する

バックアップで使用するディスクの選定

まず、Windows Server Backup で使用するディスク領域を確認するところから始めます。

Windows Server Backup では、既存のボリュームやネットワーク共有フォルダも指定することができるようになっていますけど、既存のボリュームの場合にはパフォーマンスが悪くなったり、共有フォルダの場合には 1 世代しか保存できなくなるという制約があることから、今回はバックアップ専用ボリュームを指定することにします。

そのためには、使用するディスクを、ディスクの ID を使って指定する必要があります。

 

ディスクの ID を確認するには、コマンドプロンプトから次のコマンドを実行します。

wbadmin get disks

このようにすることで、認識されている全てのディスクについて、"ディスク名", "ディスク番号", "ディスク ID", "総容量", "使用領域", "ボリューム" という 6 項目で確認することができました。

今回はバックアップ専用のディスクとして指定するため、目的のディスクの "ディスク ID" を控えておきます。

 

もしここで、使いたいディスクが "オフラインのディスク" として登場する場合には、そのディスクのパーティションが切られていない可能性があります。

その場合は、DISKPART コマンドなどを使ってパーティションを構築してあげると、リストアップされるようになります。ちなみに作成したパーティションは、フォーマットまではしなくて良いようです。

 

バックアップスケジュールの設定

バックアップのスケジュール設定は、コマンドラインから次のようにして行えます。

wbadmin ENABLE BACKUP -addtarget:{31e75780-0000-0000-0000-000000000000} -schedule:03:30,12:00 -systemState -allCritical -include:C:,H:,S:,X:

ここで "-addtarget" で指定できるディスクは、"wbadmin get disks" で確認したディスク ID やボリューム名、共有フォルダのパスなどになります。今回は Windows Server Backup 専用のディスクとして登録するため "ディスク ID" を指定します。

また、"-schedule" でバックアップするタイミングを "HH:MM" の形で 2 つ指定しています。

バックアップする場所は基本的に "-include" で指定することになるのですけど、今回はそれと合わせて "-systemState" と "-allCritical" もセットで指定しています。前者はシステム状態をバックアップ対象とするオプションで、後者はシステム状態を含む重要なボリュームを対象とするオプションです。全体をバックアップしたい場合はこれらもつけておくことで、バックアップしたい場所を指定し忘れるミスが少なくなると思います。

 

このコマンドを実行すると、認識された設定情報が画面に表示されるので、間違いがないことを確認して "Y" キーを押します。

すると、今回のように Windows Server Backup 専用ボリュームを使用する場合には、そのディスクをフォーマットするか尋ねられるので、"Y" を入力してディスクのフォーマットを行います。

 

これで、全体バックアップとしてのスケジュール設定は完了です。

後は放っておいても、設定した時刻にバックアップが取得されます。

 

最初のバックアップを取得する

スケジュールが設定できたら、これでスケジュール通りにバックアップしてくれるはずなのですけど、本当にこの設定でバックアップできるのか不安なので、最初 1 回だけ、自分のタイミングでバックアップを取ってみることにしました。

大きな変更をする前だとか、任意のタイミングでバックアップを取っておきたいようなときにも、この方法で行います。

wbadmin start backup

このコマンドを実行すると、「スケジュールされたバックアップに使用する構成と同じ構成を使用してバックアップを作成しますか?」と尋ねられるので、"Y" を入力すると、スケジュールに設定されているのと同じ内容で、直ちにバックアップを開始してくれます。

このように実行すると、バックアップの進捗状況がコマンドラインに順に表示されて行きます。

 

ここでもし、コマンドプロンプトを閉じたり Ctrl+C で実行を中断させたとしても、バックグラウンドではバックアップが継続しています。

バックアップの進捗状況は、次のコマンドを使って確認できます。

wbadmin get status

また、現在のバックアップ処理を中断させたい場合には、次のコマンドを使用します。

wbadmin stop job

コマンドラインからだとこのような感じで、バックアップ周りの運用をすることになるようでした。

 

バックアップからの復元

このようにして取得できたバックアップは、"wbadmin start restore" コマンドを使って復元できます。

それについては コマンドプロンプトから Windows Server Backup で復元する の方に記しておきます。