"VSS エラー XML ドキュメントが長すぎます。 hr = 0x80070018" エラー:Windows でバックアップを実行する場合

この記事では、Windows でバックアップを実行するときに発生するエラーの解決策について説明します。

適用対象: Windows 10 - すべてのエディション、Windows Server 2012 R2
元の KB 番号: 3098315

現象

Windows Server 2012 以前のバージョン (Windows Server 2008 に戻る) でバックアップを実行すると、次のいずれかのエラーがアプリケーション ログに記録されます。

ログ名: アプリケーション
ソース: VSS
イベント ID: 8193
レベル: エラー
説明:
ボリューム シャドウ コピー サービス エラー: 予期しないエラー呼び出しルーチン
XML ドキュメントが長すぎます。 hr = 0x80070018、プログラムはコマンドを発行しましたが、コマンドの長さが正しくありません。

操作: ライターのバックアップ ドキュメントの変更

コンテキスト: 実行
コンテキスト: リクエスタ
ライター インスタンス ID: {14BE9B90-62D7-4A2D-B57F-53D21EAB0789}

原因

ボリューム シャドウ コピー サービス (VSS) ベースのバックアップが実行されると、サブスクライブされている各 VSS ライターに対して、コンポーネントの一覧が照会されます。 「 現象 」セクションで説明されている問題は、その一覧でサイズ制限を超えるメタデータ ファイルが生成されるときに発生します。

一般的な原因:

  • TemporaryInternetFiles ディレクトリ内のファイルが多すぎます。具体的には、C:\Windows\Microsoft.NET\Framework64\v2.0.50727\TemporaryInternetFiles です。 これにより、システム ライターは VSS メタデータ ファイルのサイズ制限に達します。
  • VSS ライターのメタデータ ファイルにコンポーネントが多すぎます。

解決方法

TemporaryInternetFiles にファイルが多すぎる場合は、C:\Windows\Microsoft.NET\Framework64\v2.0.50727\TemporaryInternetFiles の場所からファイルをバックアップして削除します。 その後、システムライターはエラーなしで完了できるはずです。

エラーの原因となっているライターを特定できない場合は、ライター メタデータ ドキュメントのサンプルを収集し、各ライターのコンポーネントを確認します。

VSS ライターメタデータを収集するには、次の手順に従います。

  1. 管理コマンド プロンプトで次のコマンドを実行します。

    diskshadow /l
    C:\Metadata.txt
    list writers detailed
    Exit
    
  2. 生成されたファイルが収集されたら、各ライターのコンポーネントを確認してカウントします。

  3. アプリケーションライターが特定されたら、制限を超えなくなるまでコンポーネントの数を減らします。

アプリケーション コンポーネントの例

各コンポーネントは、"+ コンポーネント" 名と "- コンポーネントの依存関係:" 参照の間の行で表されます。 それぞれが 1 つのコンポーネントとしてカウントされます。

Hyper-V の例

"Microsoft Hyper-V VSS ライター:\006F792F-99EA-4A4A-A241-F8853A3B0CB6"
- 名前: 006F792F-99EA-4A4A-A241-F8853A3B0CB6
- 論理パス:
- 完全パス: \006F792F-99EA-4A4A-A241-F8853A3B0CB6
- キャプション: オフライン\i$
- 型: VSS_CT_FILEGROUP [2]
- 選択可能: TRUE
- 最上位レベル: TRUE
- バックアップの完了時に通知する: FALSE
-コンポーネント:
- ファイル一覧: Path = D:\Hyper-V\Virtual Machines\, Filespec = 006F792F-99EA-4A4A-A241-F8853A3B0CB6.xml
- ファイル一覧: パス = D:\Hyper-V\Snapshots、Filespec = A544BB47-0349-4EED-ABDC-DFE66CAF2927.xml
- ファイル一覧: Path = D:\Hyper-V\Snapshots\A544BB47-0349-4EED-ABDC-DFE66CAF2927, Filespec = *
\ このコンポーネントの影響を受けるパス:
- D:\Hyper-V\Snapshots
- D:\Hyper-V\Snapshots\A544BB47-0349-4EED-ABDC-DFE66CAF2927
- D:\Hyper-V\Virtual Machines\
- このコンポーネントの影響を受けるボリューム:
- \\?\Volume{9710864d-1433-11e5-93ef-806e6f6e6963}\ [D:\]

SQL の例:

- コンポーネントの依存関係:SQL - + コンポーネント "SqlServerWriter:\SQL2012\model"
- 名前: モデル
- 論理パス: SQL2012
- 完全パス: \SQL2012\model
-キャプション:
- 型: VSS_CT_FILEGROUP [2]
- 選択可能: TRUE
- 最上位レベル: TRUE
- バックアップの完了時に通知する: TRUE
-コンポーネント:
- ファイル一覧: Path = C:\Program Files\Microsoft SQL Server\MSSQL11。MSSQLSERVER\ MSSQL\DATA, Filespec = model.mdf
- ファイル一覧: Path = C:\Program Files\Microsoft SQL Server\MSSQL11。MSSQLSERVER\MSSQL\DATA, Filespec = modellog.ldf
- このコンポーネントの影響を受けるパス:
- C:\Program Files\Microsoft SQL Server\MSSQL11。MSSQLSERVER\MSSQL\DATA
- このコンポーネントの影響を受けるボリューム:
- \\?\Volume{e18ba371-5b9e-11e4-9400-806e6f6e6963}\ [C:\]
- コンポーネントの依存関係: