Windows 10の更新KB5034441が0x80070643エラーで何度でも失敗する

公開

Windows 10 22H2 において、2024年1月にリリースされた更新 KB5034441 が、何度試行しても 0x80070643  エラー で失敗異常終了する現象に遭遇。 WinRE の回復パーティションに十分な空き領域が無いために発生するらしい、このエラーの解消を試みるも…

更新KB5034441の0x80070643エラー

2024年3月初め、仮想マシン内のWindows 10 Pro 22H2のWindows Updateを確認すると、更新に失敗しているKB5034441を発見。再試行を何度実行してもエラーコード 0x80070643 で異常終了します。

図1.Windows UpdateのKB5034441エラー

図1.Windows UpdateのKB5034441エラー

この更新プログラムKB5034441は、Windows回復環境WinREの脆弱性CVE-2024-20666に対処するパッチKB5034232を適用するもので、Windows 11ではKB5034440に相当します。

サポートページの中にも述べられている通り、回復パーティションに十分な空き領域が無いとこのエラーコードを吐いて異常終了するのだそう。

 

WinRE回復パーティションの確認

早速、Windowsアイコン右クリックのメニューより、ディスクの管理をクリックして現在のパーティション構成を確認。

図2.ディスクの管理

図2.ディスクの管理

回復パーティションは500MBちょっとあり、そのほぼ全てが空き領域でした。

さらに管理者として実行されたDOSプロンプト上で、WinREの状態も確認しておきます。

 

KB5034232を手動適用するスクリプト

この脆弱性に対処するパッチKB5034232を手作業で適用するスクリプトが、KB5034957としてMicrosoftより公開されています。

ページ内の PatchWinREScript_2004plus.ps1 のトグルを開くとスクリプトが現れるので、これを囲んでコピー、テキストエディタにペーストの上、保存します。

図3.サンプルスクリプトの取得

図3.サンプルスクリプトの取得

次に、上述のページ下方にあるWindows Updateカタログサイトで、 KB5034232 をキーワードに検索、 Version 22H2 for x64 のダウンロードボタンをクリック。

図4.Windos Updateカタログでの検索結果

図4.Windos Updateカタログでの検索結果

ポップアップウィンドウのリンクより、CABファイルをダウンロードします。

図5.ダウンロードリンクのポップアップ

図5.ダウンロードリンクのポップアップ

手動適用スクリプトの実行

Powershellコンソールを管理者権限で開き、現在の実行権限が RemoteSigned 以上であることを確認します。

未設定の場合は、以下のコマンドで設定。

ダウンロードしたPS1スクリプトを実行する際、 -packagePath オプションでCABファイル名を渡すと、長いファイル名の冒頭を打ったところで TAB キーから候補を類推してくれるので便利です。

途中、ネガティブなメッセージにドギマギさせられるも、数分で処理は完走しました。

 

手動適用後のWindows Update

再びWindows Updateを開き、更新を実行するとまた最後に同じエラーコードを目にするも、よく見るとそれは2023-10のKB5001716の更新エラーでした。

図6.Windows Updateに別の更新エラー

図6.Windows Updateに別の更新エラー

 

更に履歴を確認すると、KB5034441は成功終了の記録がしっかり残っているので、スクリプトによる手動適用は成功ということに。

図7.Windows Updateの履歴

図7.Windows Updateの履歴

そもそも同じKB番号で日付の異なる2つの更新が存在し、1勝1敗という状態は明らかにおかしいと思うので、しばらく様子を見ることにします。

 

 

余談)回復パーティションの拡張

ここからは余談。実は上述でKB5034441がまだ残っていると勘違いしてしまい、回復パーティションの手作業による拡大に手を染めました。結果的に意味のない作業ですが、未来の自分へその作業記録をここに残します。

作業の手順は、KB5034441ページに案内されていたKB5028997に記載されています。

管理者権限で開いたDOSプロンプト上で、まずWinREを無効化します。

DiskPartコマンドに入り、ディスク一覧からシステムディスクを選択。システムディスクには右端のGPT欄にフラグが経っていないので、パーティションテーブルはMBR。

ディスク内のパーティション一覧から、Windowsシステム(Cドライブ)のパーティションを選択し、サイズを 250MB 削ります。

続いて回復パーティションを選択して、これを一旦削除。

次に回復パーティションを作り直すのですが、MBRパーティションなのにGPTのつもりで作成しようとすると、当然エラーになります。

MBRの場合は以下の id で作成します。

作成したパーティションをフォーマットし、DiskPartを終了します。

WinREを再び有効にして作業完了です。

ディスクの管理でも拡張された新しい回復パーティションを、見ることができました。

図8.回復パーティション拡張後

図8.回復パーティション拡張後

 

created by Rinker
¥2,653 (2024/04/27 14:17:20時点 Amazon調べ-詳細)

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA