Active Directory サーバーでシステム状態のバックアップに失敗する

こんにちは。日本マイクロソフト株式会社 高谷 です。

最近、Active Directory サーバーにおいて、Windows Server バックアップで “システム状態” のバックアップをとろうとすると失敗する、というお問い合わせを複数のお客様からいただきましたが、多くのケースで vsock.sys (VMWare製)ドライバーの ImagePath が不正な値になっていることが原因であることが確認できました。

この事例に当てはまる場合、ユーザー様にて比較的簡単に修復ができますので、原因と対処方法についてご紹介したいと思います。
この事例に当てはまるかご確認いただき、当てはまる場合は修復方法をお試し下さい。
.

■ 事象の確認ポイント

.
確認ポイント (1)  環境の確認

お客様の環境は以下に当てはまりますか?

.....・VMWare 環境である。(物理サーバーおよび Hyper-V 仮想環境では事象は確認されておりません。)

.....・OS は Windows Server 2012 R2もしくは Windows Server 2016 である。

.....・Active Directory の役割を担っている。

.
確認ポイント (2)  バックアップのログの確認

エラーのログが以下のパスに作成されていますか?

.....パス:C:\Windows\Logs\WindowsServerBackup\Backup_Error-dd-mm-yyyy_xx-xx-xx.log

▽ Backup ログに記録されるエラーの内容
----------------------------------------------------------------------------------------------
C:\windows\\systemroot\ のバックアップで列挙中にエラーが発生しました: エラー [0x8007007b]
ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。
----------------------------------------------------------------------------------------------

.
確認ポイント (3)  イベント ログの確認

アプリケーションのイベント ログには、以下のログが記録されていますか?

▽ アプリケーションのイベント ログに記録されるエラーのイベント
----------------------------------------------------------------------------------------------
レベル:エラー
イベントソース:Backup
イベント ID:517
メッセージ:'‎YYYY‎-‎MM‎-‎DDT09:00:43.533016300Z' に開始したバックアップ操作は、次のエラー コード '0x80780049' (バックアップに含まれるいずれの項目もバックアップされませんでした。) のため失敗しました。
イベントの詳細で解決策を確認し、問題の解決後にバックアップ操作を再実行してください。
----------------------------------------------------------------------------------------------

上記 3 点が全て当てはまる場合、この事例に合致する可能性が高いですので、次の項の修復方法をお試しください。
.

■ 修復方法

.
vsock.sys ドライバーの ImagePath のパス情報の \SystemRoot\ を削除することで改善します。

// 修正手順

  1. [スタート] > [ファイル名を指定して実行] > regedit と入力してレジストリ エディターを起動します。
  2. 以下のパスの階層を展開します。

..........HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > vsock

  1. ImagePath の値を右クリック > 修正 をクリックし以下のように変更します。

..........---------------------------------------------------------------------
..........変更前:
..........\SystemRoot\system32\DRIVERS\vsock.sys

..........変更後:
..........system32\DRIVERS\vsock.sys
..........---------------------------------------------------------------------

..........※ 変更内容は \SystemRoot\ を削除するのみです。

  1. レジストリ エディターを終了し再起動を実施します。

..........以上で作業は完了です。

なお、上記のレジストリの変更作業が、Active Directory の機能も含めてシステムへ影響を与えた報告はございませんので、ご安心ください。
.

■ 原因

.
バックアップ取得の要求が発生すると、まず静止点の確保のために、各種 VSS Writer がそれぞれの管轄するモジュールの列挙を行います。列挙が正常に完了して初めて静止点の確保が行われ、バックアップが取得される流れとなります。

今回の事象は、VSS Writer の一つである System Writer が、自身が管轄するモジュールの一つである vsock.sysの列挙に失敗したことで、バックアップ取得に失敗しています。

さらに、vsock.sys の列挙に失敗した理由としては、vsock.sys の ImagePath の情報が正しくないことが原因です。

通常、各ドライバーの情報は、ドライバーのインストール時にレジストリに保存されており、この情報の一つである ImagePath に正しくない値が入力されていることにより、列挙に失敗します。

そのため、ImagePath の値を正しい値に修正すれば今回の事象は改善します。

▽ vsock.sys の ImagePath の情報
---------------------------------------------------------------------
誤:\SystemRoot\system32\DRIVERS\vsock.sys

正:system32\DRIVERS\vsock.sys
---------------------------------------------------------------------

(参考) vsock.sys とは?
vscok.sys は VMWare 様の提供する VMWare Tools のドライバーです。
以下に VMWare 様の公開情報ページを掲載します。

.
VMWare 様 公開情報)
“VMware Tools デバイス ドライバ”
https://pubs.vmware.com/vsphere-50/index.jsp?topic=%2Fcom.vmware.vmtools.install.doc%2FGUID-6994A5F9-B62B-4BF1-99D8-E325874A4C7A.html

なお、VMWare 様の公開質問ページにて、この事象が取り上げられておりました。

.
VMWare 様公開情報)
“Unable to backup Windows AD Server with VMware Tools installed”
https://communities.vmware.com/thread/565599

いかがでしたでしょうか。
本ブログが少しでも皆様のお役に立てますと幸いです。