Freigeben über


最新の Windows 10 のインストールのトラブルシューティング … ログ分析の進め方

本記事の最新版をフォーラムにて紹介しております。
記事の改訂が含まれる場合がございますので、フォーラムの情報を参照してください。
フォーラムへのリンク


こんにちは、Windows プラットフォームサポート Deployment/Setup チームの宮崎です。

"最新の Windows 10 のインストールのトラブルシューティング … 一般的な対処策" にてアップグレード・機能更新プログラムのインストール時の対処策の概要をお伝えしましたが、手順や事象の規模によっては運用環境で実施することが難しくログの分析によって事象の特定を進められたい場合がございます。そのため弊社で確認している確認方法についてご紹介いたします。

各ログにてエラーコードやエラー時のログの様子をご紹介しておりますが、必ずしもログから原因を特定しかねる場合もございます。
切り分けを前提とした対処策の検討についても引き続き検討いただきながら、本情報を参考にしてください。

SetupDiag ツール

SetupDiag は Windows 10 のインストール(アップグレード)の分析調査を自動で行うツールで、弊社にお問合せいただいたお客様にも実施をお勧めしています。出力される SetupDiagResults.log から分析結果を確認できます。

出力例 1. アプリケーションの互換性

以下の出力例はアプリケーションの互換性による失敗です

 Matching Profile found: CompatBlockedApplicationAutoUninstall - BEBA5BC6-6150-413E-8ACE-5E1EC8D34DD5
System Information:
 Machine Name = ********
 Manufacturer = ********
 Model = ********
    HostOSArchitecture = ********
   FirmwareType = ********
 BiosReleaseDate = ********
  BiosVendor = ********
   BiosVersion = ********
  HostOSVersion = ********
    HostOSBuildString = ********
    TargetOSBuildString = ********
  HostOSLanguageId = ********
 HostOSEdition = ********
    RegisteredAV = <複数のサードパーティー製品のプロダクト名称>
  FilterDrivers = 
    UpgradeStartTime = ********
 UpgradeEndTime = ********
   UpgradeElapsedTime = ********
   CV = ********
   ReportId = 

Warning: Found Application Hard Block for: "<サードパーティー製品のプロダクト名称>".
You must uninstall "<サードパーティー製品のプロダクト名称>" before continuing with the installation/update.

警告のテキストから、互換性の対象となるサードパーティー製品が確認いただけます。

出力例 2. 0x8007007B-0x50015

以下の出力例はダウンレベル (再起動前の OS にログオンし操作ができている状態)時点でのエラーで Update Boot Code (ブート情報の更新) 処理による失敗です。

 Matching Profile found: FindDownlevelFailure - 716334B7-F46A-4BAA-94F2-3E31BC9EFA55
System Information:
    Machine Name = ********
 Manufacturer = ********
 Model = ********
    HostOSArchitecture = ********
   FirmwareType = ********
 BiosReleaseDate = ********
  BiosVendor = ********
   BiosVersion = ********
  HostOSVersion = ********
    HostOSBuildString = ********
    TargetOSBuildString = ********
  HostOSLanguageId = ********
 HostOSEdition = ********
    RegisteredAV = <複数のサードパーティー製品のプロダクト名称>
  FilterDrivers = <複数のサードパーティー製品のフィルタードライバー名称>
    UpgradeStartTime = ********
 FinalizeStartTime = ********
    UpgradeEndTime = ********
   UpgradeElapsedTime = ********
   CV = ********
   ReportId = ********

Error: SetupDiag reports down-level failure found.
Failure Data: Last Setup Phase = Finalize Last Setup Operation = Update Boot Code Error = 0x8007007B-0x50015
LogEntry: ****-**-** **:**:**, Error                 SP     CUpdateBootCode::DoExecute: An error occurred while servicing the boot files from [C:\$WINDOWS.~BT\Sources\Boot]. Error: 0x8007007B[gle=0x0000007b]

Refer to https://docs.microsoft.com/en-us/windows/desktop/Debug/system-error-codes for error information.

本事例はお客様の切り分けにより FilterDrivers に表示されたモジュールを含むサードパーティー製品をアンインストールすることで事象が解決できることを確認いたしました。ログ ファイルから必ずしも特定が困難な場合がございますので、切り分けの実施も弊社では提案いたしております。

モジュール名から製品の開発元を特定する場合、モジュール名のプロパティ情報などを参照してください。
モジュールによっては、弊社の技術情報 Allocated Altitudes やシステム情報 (msinfo32) から開発元を確認することが可能です。あわせてご参考にしてください。

- Windows 7 での利用について

Windows 7 から windows 10 へのアップグレードにおいてトラブルシューティングのため SetupDiag ツールを利用する場合、.NET Framework 4.6 をインストールする必要があります。また、実行時にプログラム互換性アシスタントが表示される場合がございますが、[このプログラムは正しくインストールされました] をクリックし、ツールの実行をそのまま進めてください。

C:\Windows\Logs\MoSetup\BlueBox.log

ダウンレベルでの setup.exe の実行結果を確認できます。以下は空き容量の不足 [MOSETUP_E_INSTALLDISKSPACE_BLOCK (0xC190020E)] で失敗するときのログの例です。

 ****-**-** **:**:**: Creating path: [C:\$WINDOWS.~BT\Sources]...
****-**-** **:**:**: Launching process: [C:\$WINDOWS.~BT\Sources\SetupHost.exe] with command-line [/Install /Media /Quiet  /InstallFile "D:\Sources\Install.wim" "/auto" "upgrade" "/dynamicupdate" "disable" /MediaPath "D:"] in Session: [-1]
****-**-** **:**:**: Launching: [C:\$WINDOWS.~BT\Sources\SetupHost.exe] [/Install /Media /Quiet  /InstallFile "D:\Sources\Install.wim" "/auto" "upgrade" "/dynamicupdate" "disable" /MediaPath "D:"] from []!
****-**-** **:**:**: Waiting for process events...
****-**-** **:**:**: Process exit code: [0xC190020E]
****-**-** **:**:**: LaunchProcessInSession: Error = 0xC190020E

C:\$Windows.~BT\Sources\Rollback\setupact.log

ロールバックが発生した際の返り値を確認することができます。以下のログでは 0xc1900101-0x20017 と確認できます。

 ****-**-** **:**:**, Info                  MOUPG  DlpTask: Transport not set. Skipping download phase.
****-**-** **:**:**, Info                  MOUPG  DlpTask: Executing Actions...
****-**-** **:**:**, Info                  MOUPG  Action execution thread timeout period: [1000 ms]
****-**-** **:**:**, Info                  MOUPG  InitializeRoutine: MOSETUP_ACTION_IMAGE_EXIT
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing SetupResult: [0xc1900101]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing Extended:    [0x20017]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing Scenario:    [1]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing Mode:        [5]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing Target:      [C]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing SQM:         [FALSE]
****-**-** **:**:**, Info                  MOUPG  ImageExit: Initializing PostReboot:  [TRUE]
****-**-** **:**:**, Info                  MOUPG  ProgressHandlerAction: Sending initial progress message for action [0].

エラーコードの確認方法は アップグレード エラー コード を参照してください。

なお、エラーコードはあくまでも失敗時のフェーズ・操作内容を示しているまでとなるため、
エラーコードから直接原因の特定が難しい場合があり切り分けが必要となることがございます。

C:\$WINDOWS.~BT\Sources\Panther\ScanResult.xml

BlueBox.log より以下のような互換性のエラーであることがわかっている場合、C:\$WINDOWS.~BT\Sources\Panther\ScanResult.xml を参照することで、互換性のエラーに至った製品名を確認可能です。

0XC1900208 (MOSETUP_E_COMPAT_INSTALLREQ_BLOCK)

0XC1900209 (MOSETUP_E_COMPAT_INSTALLREQ_CANCEL)

以下は実際に互換性のエラーが発生したときの ScanResult.xml の例として抜粋します。

 <Programs>
  <Program Name="<サードパーティー製品のプロダクト名称>" Id="" IconId="<サードパーティー製品 ID>">
        <CompatibilityInfo BlockingType="Hard" StatusDetail="UpgradeBlock"/>
      <Action Name="ManualUninstall" DisplayStyle="Text" ResolveState="NotRun"/>
  </Program>
</Programs>

このとき、C:\$WINDOWS.~BT\Sources\Panther\***_APPRAISER_HumanReadable.xml ファイルを参照することで、互換性のエラーに至ったファイル パスが確認できます。以下は ***_APPRAISER_HumanReadable.xml の例を抜粋します。

 <PropertyList Type="Inventory">
  <Property Name="AssetType" Value="File" />
  <Property Name="BinFileVersion" Value="****" />
  <Property Name="BinaryType" Value="****" />
  <Property Name="FileId" Value="****" />
  <Property Name="LongPathHash" Value="<サードパーティー製品 ID>" />
  <Property Name="LowerCaseLongPath" Value="<サードパーティー製品のモジュールのパス>" />
  <Property Name="ProgramId" Value="****" />
  <Property Name="Size" Value="****" />
</PropertyList>

互換性のエラーが生じる場合、サードパーティー製品のアンインストール対応などが必要となりますが、実際のモジュールの検出状況については上記の手順にて LowerCaseLongPath よりご確認ください。

本記事が皆様の運用の一助となりましたら誠に幸いです。

本記事におきましては予告なく内容を変更させていただくことがあります。今後、情報のアップデートがあれば、本記事にて引き続き情報を提供いたします。