web-dev-qa-db-ja.com

このCheckSUR.logファイルにリストされているエラーを修正するにはどうすればよいですか?

WindowsUpdateを使用してWindows7マシンを更新しようとしていますが、エラー800B0100が継続的に発生します(報告された内容と同様 ここここ 、および ここ) )。それらのガイドに記載されているいくつかの手順を実行した後(システム更新準備ツール、ディスクの確認、Windows Updateトラブルシューティング、DISM、sfc、おそらく私が忘れていた何か)。私はほとんど手ぶらで出てきました。

私が得た唯一のリードは、私が実行したDISM /Online /Cleanup-image /Scanhealthコマンドから来ています。これにより、 this CheckSUR.logファイルが生成されました。いくつかのハイライト:

Checking Windows Servicing Packages

Checking Package Manifests and Catalogs
(f) CBS MUM Corrupt 0x00000000  servicing\Packages\Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum       Expected file name Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~neutral~~11.2.9412.0.mum does not match the actual file name
(f) CBS MUM Corrupt 0x00000000  servicing\Packages\Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum      Expected file name Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~neutral~~11.2.9412.0.mum does not match the actual file name
(f) CBS MUM Corrupt 0x800F0900  servicing\Packages\Package_111_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum        Line 1: 
(f) CBS Catalog Corrupt 0x800B0100  servicing\Packages\Package_111_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.cat        
(f) CBS MUM Corrupt 0x800F0900  servicing\Packages\Package_112_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum        Line 1: 

...

Checking Package Watchlist

Checking Component Watchlist

Checking Packages

Checking Component Store
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\AMD64_Microsoft-windows-wow64_31bf3856ad364e35_6.1.7601.23136_none_c6c193f2071b07e3.manifest   AMD64_Microsoft-windows-wow64_31bf3856ad364e35_6.1.7601.23136_none_c6c193f2071b07e3 
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\AMD64_Microsoft-windows-ncrypt-dll_31bf3856ad364e35_6.1.7601.23136_none_bc7a217a2167e4bd.manifest  AMD64_Microsoft-windows-ncrypt-dll_31bf3856ad364e35_6.1.7601.23136_none_bc7a217a2167e4bd    
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\AMD64_Microsoft-windows-ntdll_31bf3856ad364e35_6.1.7601.23136_none_b772aa2a2bf98230.manifest   AMD64_Microsoft-windows-ntdll_31bf3856ad364e35_6.1.7601.23136_none_b772aa2a2bf98230 
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\AMD64_Microsoft-windows-smss_31bf3856ad364e35_6.1.7601.23136_none_0ad673e548fd75d4.manifest    AMD64_Microsoft-windows-smss_31bf3856ad364e35_6.1.7601.23136_none_0ad673e548fd75d4  
(f) CSI Manifest All Zeros  0x00000000  winsxs\Manifests\AMD64_Microsoft-windows-rpc-http_31bf3856ad364e35_6.1.7601.23136_none_fe94b8d86f1fbfc8.manifest    AMD64_Microsoft-windows-rpc-http_31bf3856ad364e35_6.1.7601.23136_none_fe94b8d86f1fbfc8  

...

servicing\packages\Microsoft-Windows-IE-Hyphenation-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum
    servicing\packages\Microsoft-Windows-IE-Spelling-Parent-Package-English~31bf3856ad364e35~~~11.2.9412.0.mum
    servicing\packages\Package_111_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_111_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_112_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_112_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_113_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_113_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum
    servicing\packages\Package_114_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.mum

どうすればこのエラーを修正して、次にDISMを実行したときにエラーが発生しないようにできますか?これで元のエラー(Windows Updateの800B0100エラーコードを含む)が修正されることを期待しているので、代わりに修正があれば、もっと感謝します。

イントロ

DISM は、%WINDIR%\Temp\CheckSUR\の適切なサブディレクトリにある更新の「適切な」バージョンにアクセスできる場合にのみ、破損した更新を修復します。これらのファイルがない場合、 DISM またはシステム更新および準備ツール SURT は、検出された破損ファイルのリストのみを生成し、生成しません。実際に修理を行ってください(あなたが目撃したように)。

では、破損したファイルを特定して修正するにはどうすればよいでしょうか。この MS KBの記事 は、いくつかの壊れたリンクと欠落している詳細がありますが、それを説明する合理的な仕事をします。これらは主にこの 他のMS KB で扱われます。苛立たしいことに、一部の情報はこれと矛盾します MS technetの記事*(脚注を参照)。いくつかの異なるソースをつなぎ合わせるのではなく、ここで手順について読みたいと仮定します。

不良アップデートを特定する手順

%WINDIR%\Logs\CBS\CheckSUR.logで、 [〜#〜] surt [〜#〜] をインストールするか、 [〜#〜] dism [〜#〜] を実行して生成され、の下部にスキップしますファイルを作成し、servicing\packages\Package_セクションのUnavailable repair files:で始まる行を読み取ります。表示される場所_ for_KB######、KB ######(あなたの場合 KB3040272 )は、ダウンロードしたいアップデートです。 @ magicandre1981はまた、おそらく質問で直接提供されていないログファイルの一部から、あなたに影響を与えているとして KB3071756 を特定しました。

破損していないバージョンのパッケージをダウンロードする

壊れたKBを特定したら、 support.Microsoft.com(/ kb/######) の関連するKBエントリでMicrosoft Update MSUファイルを取得できます。または、IEを使用して、 Microsoft Updateカタログ に移動し、関連するKB番号を検索します。 MS KBページで、[情報の更新]セクションまで下にスクロールし、[今すぐパッケージをダウンロードしてください]というリンクを探します。オペレーティングシステムのフレーバーのリンクの横(x86 = 32ビットOS; x64 =標準64ビット; ia-64はハイエンドIntel64ビットサーバーのみ)。ファイルをダウンロードします。

更新ファイルをDISM/SURTで使用できるようにする

ファイルをダウンロードした後、以下に示すようにMSU全体を配置するか、含まれているすべてのmumcat、およびmanifestファイルを抽出して「適切な」バージョンを移動できます。 CheckSUR.logで示された破損したパッケージを適切なディレクトリに移動します(ここでも、以下に示します)。 msuファイルからの抽出は、次のように実行できます コマンドシーケンス

expand -f:* C:\path\to\msu.msu %temp%\msuexpanded\
expand -f:* %temp\msuexpanded\Windows6.1-KBnnnnnn-xnn.cab %temp\msuexpanded\cab\

update.catupdate.mumは、パッケージに固有の名前に名前を変更する必要があります。たとえば、 壊れたパッケージ の場合、update.catの名前をPackage_for_KB3040272~31bf3856ad364e35~AMD64~~6.1.1.1.catに変更します。

次に、ファイル(msuおよび/または他の拡張子)を%temp\msuexpanded\cab \ディレクトリから所定の場所に移動する必要があります*(脚注を参照)

File Extension | Absolute path (create if needed) | OS version confirmed (by)
-------------- | -------------------------------- | -----
msu            | %SYSTEMROOT%\CheckSUR\packages\  | Windows 7 SP1 x64 (@chadnt‡)

(記号については脚注を参照)

File Extension | Subdirectory of %WINDIR%\Temp\CheckSUR\ (create if needed)
-------------- | -------
cat            | servicing\Packages\
mum            | servicing\Packages\
manifest       | winsxs\Manifests\
msu (alternate)| Packages\

%SYSTEMROOT%%WINDIR%の両方 デフォルトはC:\ WINDOWS

修復ファイルが適切なディレクトリにある場合、DISM/SURTは破損したファイルを修復する必要があります。

破損したファイルの修復

KB296658 -Windows7およびWindowsServer 2008 R2のシステム更新準備ツールの改善KB記事 | MSU download )がインストールされ、コマンドラインバージョン「DISM」が利用可能になります。

DISMは、Windows7ではCheckSUR(別名システムアップデート準備ツール)のコマンドライン呼び出し可能バージョンになります (SURT) なので、SURTを MS KB 947821 から「インストール」する必要はありません。 =破損したMSアップデートをチェック/修復する必要があるたび。

DISMの使い方は以下の通りです

DISM /Online /Cleanup-Image /Scanhealth

これは、管理者アカウントから実行する必要があります(つまり、管理者/昇格されたコマンド-プロンプトまたは昇格された特権を持つスタートバー)。

または、いつでも KB947821からのSURT を再度インストールできます。

DISMまたはSURTを再度実行した後、CheckSUR.logファイルを再度チェックして、壊れたパッケージに対処しているかどうかを確認します。それが機能しなかった場合は、Windowsの インプレース更新 の実行を検討することをお勧めします。

免責事項:これの一部は@ magicandre1981の応答から削除されました。たくさんの詳細を追加したので、彼の投稿の簡単な編集が適切であるとはもはや感じませんでした。

脚注

*ディレクトリに関しては、MicrosoftのWebサイトに矛盾する情報が掲載されています。

  1. KB947821 (「修正方法」のステップ4)は、msu%SYSTEMROOT%\CheckSUR\packagesにコピーする必要があると述べています
  2. KB2700601msumum、およびcat%WinDir%\Temp\CheckSUR\Packages\に言います
  3. MS Technet (タイプミスの修正後)mumおよびcatファイルは%windir%\Temp\CheckSUR\servicing\packagesに入れられます

同様に、manifestファイルの適切なディレクトリとして識別される場所がいくつかあります

†@ mpag
‡@ chadnt

5
mpag

アップデートKB2966583をインストールしてください

Windows7およびWindowsServer 2008 R2のシステム更新準備ツールの改善
http://support.Microsoft.com/kb/2966583/en-us

これで、次のDISMコマンドを実行して破損したファイルを修復できるようになります。

DISM /Online /Cleanup-Image /Scanhealth

(これが実際に機能するかどうかは試していません。試して報告してください)

これが機能しない場合は、次のようにします。アップデートのファイル KB3040272 および KB3071756 が破損しているため、ダウンロードセンターからMSUファイルをダウンロードし、%SYSTEMROOT%\CheckSUR\packagesフォルダーに入れて チェックツールKB947821 もう一度。

それでも問題が解決しない場合は、 Inplace Update を使用してWindowsを修復します。

0
magicandre1981