リストア時に エラー : 0x80042412 (VSS_E_ASRERROR_RDISK_FOR_SYSTEM_DISK_NOT_FOUND) が発生する事象について

こんにちは、日本マイクロソフト Windows サポート チームです。

 Windows Server OS では、ハードウェア故障や変更作業前後、また不慮のデータ損失などに
備えるため、Windows Server バックアップという機能が提供されています。

 今回はこの Windows Server バックアップを使用して取得したバックアップ データを
リストア (復元) する際に発生し得る状況について、お客様からいただいたお問い合わせを
もとに有効な対処策と併せてご紹介したいと思います。

 

 =========================================
■ Windows Server バックアップとリストア
=========================================
Windows Server バックアップは、Windows Server に標準で搭載されているバックアップ ツールです。
Windows Server 2008 以降で、サーバー マネージャーから機能を追加いただくことでご利用いただけます。

 バックアップの取得対象としては OS イメージを含むベアメタル回復や対象のボリュームだけの取得、
システム状態のみのバックアップに対応しています。また、バックアップデータの保管先は、ローカル
ディスク、外付けハードディスクやネットワーク経由の共有フォルダに対応しています。

 今回は以下のハードウェア (ディスク) 構成にて採取したベアメタル回復 (BMR) バックアップを、復元した際に
遭遇した状況・事象について、ご紹介していきます。

 [構成]
//OS : Windows Server 2016
//ブート構成 : UEFI
//バックアップ対象: ベアメタル回復

[ディスク構成]
//Disk 0 (GPT) ---- 372 GB (C ドライブ 271 GB / F ドライブ 100 GB/ EFI パーティション / MSR パーティション)
//Disk 1 (GPT) ---- 372 GB (Zドライブ  372 GB / MSR パーティション)

※ バックアップ データ保管先: Z ドライブ
※ リストア時は Windows Server 2016 のインストール用 DVD から起動し、リストアを実行 (以下のオプションを使用)

 

 

 

 

 

 

 

 

 

 

 

 

======================
■ 遭遇した事象・状況
======================
マイクロソフトへお問い合わせいただいた事案では、上記の構成で採取したバックアップ データを
同一システムにリストアした際に、エラー : 0x80042412 (VSS_E_ASRERROR_RDISK_FOR_SYSTEM_DISK_NOT_FOUND)
が出力されて、復元処理が早々に失敗してしまう状況が報告されていました。

同一のシステムおよびディスク構成であれば、そのまま復元できる事が一般的には期待されます。
エラー : 0x80042412 (VSS_E_ASRERROR_RDISK_FOR_SYSTEM_DISK_NOT_FOUND) は、復元先のシステム ディスクの
選定に失敗した事を示していますが、何故このような事象が発生してしまうのかという点について解説いたします。

ベアメタル回復のリストア処理では、OS メディア (DVD) からブートして復元する為、採取できるログに
限りがありますが、DVD ブートしている環境の "X:\Windows\Logs" 配下には、Windows Server バックアップを
始めとする回復環境下のログが残ります。そのため、このログを確認してみると以下の流れで、該当のエラーが
発生していました。
 

<事象発生の流れ>
-----------------
1) システム ディスクのリストアをするため、リストア先の選定処理が開始される
2) リストア先となり得るディスクの列挙処理が行われる
3) 上記 2) で見つかったディスクをもとに、リストア時に使うパス生成を行う。
4)この時、上記 3) の処理でエラーが発生して、上記処理 2) や 1) の各処理にエラーが返される
5) 最終的にリストア先のディスクが無いと認識されて、エラー : 0x80042412 (VSS_E_ASRERROR_RDISK_FOR_SYSTEM_DISK_NOT_FOUND) が出力される。

 

上記 3) の処理時にエラーが発生した原因については、"X:\Windows\Logs" 配下のログからでは
特定が難しく、事象が再現する環境を用いた調査が必要となりますが、どうやら復元先のディスク情報を探す過程で
(情報取得時に)、エラーが発生して処理が失敗しているようです。
 

また、類似した事案については、海外を中心に数件報告されているようで、以下の状況が要因および
対処策として確認できました。(※ もちろん、すべての環境で発生する状況ではありません)

 

<要因>
---------
// GPT ディスクを構成しているパーティーションとして、MSR パーティションが存在しない
// GPT ディスクを構成する各パーティーションの構成をカスタマイズしている (既定の構成とは異なる)

 

※ 上記 2) のディスクの列挙処理の延長では、(リストア時にフォーマットするのにも関わらず) パーティーション構成もチェックする動作になっています。しかもその後には、サイズやディスクのセクター サイズなども確認している事も報告されていました。

 

<対処>
-----
// 対象の GPT ディスクにMSR パーティーションを追加する
// システムディスクを以下のようなパーティーション構成として、バックアップおよびリストアを実施する

 

<以下、既定構成のサンプルとなります>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

しかし、なかなか上記の変更を行う事は難しいかと思います。
そんな場合には以下の対処策をお試しください。
 

=================
■ 有効な対処策
=================
上記の確認結果から、この事象はリストア先のディスク列挙処理や、パーティーション構成の
確認に失敗していました。そのため、リストアを実施する際に以下のように "ディスクをフォーマットして
パーティーションに分割する" のチェックボックスを外すことで、各構成のチェックを行わず、
リストアする事が可能です。(※ 実際にお問い合わせいただいた事案も、この手法でリストアが
正常に完了していました)

 

 

 

 

 

 

 

 

 

 

 

 

また、もし上記でリストアが行えない場合には、以下のようにリストア先のディスクを一度
クリーンな状態にして (パーティーションなどを削除して)、リストアする事でも回避できる事が期待できますので、
もし上記チェック ボックスを外しても復元できない場合には、こちらの手順もぜひ試してみてください。

 

手順:
-----
1. 回復環境 (DVD ブート環境) にて Shift+F10 からコマンドプロンプトを起動します

2. diskpart を実行します

3. 以下のコマンドを実行してシステム ディスクのディスク番号を確認します
  (DVD ブートの環境ではディスク番号が OS 起動時と異なっている場合がありますので、
念のため、サイズやボリューム情報から確認ください)  

diskpart> list disk
diskpart> list volume
diskpart> select disk 0
diskpart> detail disk  

(※ 必要に応じて disk 1 でも確認して、システム ディスクを特定します)

4.以下のコマンドを実行して対象ディスク (ここでは disk 0) を初期化します

 

diskpart> select disk 0
diskpart> clean
diskpart> convert gpt
 

5.リストア処理を実施して、きちんとリストアできることを確認します。

 

-関連情報
ディスク パーティションのスタイルについて
https://blogs.technet.microsoft.com/askcorejp/2018/04/12/partitionstyle/

 

Windows Server バックアップでのリストアディスクの選択について
https://blogs.technet.microsoft.com/askcorejp/2018/04/03/backuprestoredisk/

ディスク認識とディスク番号について
https://blogs.technet.microsoft.com/askcorejp/2018/06/18/diskrecogno/  

いかがでしたでしょうか。
皆様のリストア問題に本情報が少しでもお役に立てば幸いです。