KB5034441の修正をMicrosoftが匙を投げてしまいました・・・。コマンドでの修正手順を詳しくご紹介

いつもお世話になっております。インフラサポートチームの近藤です。

●はじめに

先月も下記ブログにて紹介させて頂きましたWindows10の更新プログラム(KB5034441)がエラー(0x800070643)で失敗してしまう件について、Microsoftより続報がありました。

なんと、Windowsアップデートによる解決方法の提供は行わないという事で解決済みとされてしまいました。
悪い言い方をするならば、Microsoftでも直せなかったので匙を投げられてしまいました。
各ユーザーでコマンドを使って手動で解決して下さいという話になってしまっています。

解決方法の提供を行わないのであればオプションの更新プログラムに格下げしてエラーを出さない様にして頂きたいですが、未だに更新プログラムのチェックを行うとインストールが始まりエラーが出てしまいます。
今回は実際にこのエラーが出ているPCでコマンドによる解決を行ってみましたので紹介させて頂きます。

ただし、先月のブログでもお話させて頂いた様に、この更新プログラムで修正されている内容は大半のユーザーにはほぼ影響の無いものであり手動で解決しようとして失敗してしまう事の方が余程リスクが大きいと思われます。
基本的には無理に挑戦しようとせず、放置して頂く事をおすすめします。

●どんな修正を行うのか

今回のKB5034441のエラーはMicrosoftの発表によると回復パーティションの空き容量不足により発生しているエラーです。
ただし、普通のデータ保存領域と違って回復パーティションの中身は簡単に消す事は出来ませんし、容量を増加させる事も出来ません。
その為、コマンドにより回復パーティションを一度削除し容量を増やした状態で再構成する必要があります。
コマンドによる操作は一般的なユーザーは馴染みが無い上、今回の作業は一時的なパーティション削除も含む作業である為、
KB5034441で修正されている内容を考えると大半のユーザーにとってはリスクの割に合っていない作業と思われます。
基本的には放置をおすすめします。

●コマンドによる修正手順

①エラーが出なくなっている可能性もありますので、通常のWindowsアップデート手順で成功しないかどうか試します。
ブログ作成時点では以前と全く同じ状況でしたので、コマンドによる修正を試します。

 
②コマンドによる作業前にディスクの構成を確認します。
コンピュータの管理のディスクの管理を開き、回復パーティションのディスク番号とパーティション番号を控えます。
また、Cドライブから容量を回復パーティションに移しますので後の手順でCドライブを判断出来る様にドライブ番号と現在の容量を確認しておきます。

③回復環境を一時的に無効化します。
コマンドプロンプトを管理者実行します。
下記コマンドを実行し現在回復環境が有効になっているかどうかを確認します。

reagentc /info

WindowsREの状態がEnabledであれば有効、Disabledであれば無効です。
最初からDisabledであればそもそも回復環境が無いと思われますのでKB5034441を無理に適用する必要はありません。
続いて下記コマンドを実行し回復環境を一時的に無効化します。

reagentc /disable

もう一度”reagentc /info”を実行しDisabledに変わっていれば成功です。

④ディスクのパーティション変更をするコマンドであるDiskpPartを起動します。
下記コマンドを実行します。

diskpart

DiskPartが起動するとコマンドの先頭がsystem32>からDISKPART>に変更されます。

⑤回復パーティションを増やす容量を確保する為、Cドライブの容量を縮小します。
下記コマンドでディスクの一覧を表示します。

list disk

ディスクの一覧からシステムドライブのディスク番号を確認します。
今回はディスクが一つの為分かりやすいですが、環境によってはディスクが複数ある為注意が必要です。
最初にディスクの管理で確認したディスク番号とも見比べて判断しましょう。
続いて下記コマンドでシステムドライブのディスクを選択します。

sel disk <システムドライブディスク番号>

今回の環境では”sel disk 0″ですが、環境によっては0ではありませんので注意が必要です。
続いて下記コマンドでパーティションの一覧を表示します。

list part

パーティションの一覧からCドライブと回復パーティションのパーティション番号を確認します。
こちらも最初にディスクの管理で確認したパーティション番号やドライブ容量と見比べて判断して下さい。
続いて下記コマンドでCドライブのパーティションを選択します。

sel part <Cドライブのパーティション番号>

こちらのコマンドも環境によりパーティション番号が違いますので注意が必要です。
続いて下記コマンドでCドライブの容量を回復パーティションを増やす容量分だけ縮小します。
今回は250MB縮小します。
万が一Cドライブの空き容量が250MBを下回るほど足りていない場合は実行しないで下さい。

shrink desired=250 minimum=250

⑥回復パーティションを再構成する為に、現在の回復パーティションを削除します。
下記コマンドで回復パーティションを選択します。

sel part <回復パーティションのパーティション番号>

こちらのコマンドも環境によりパーティション番号が違いますので注意が必要です。
続いて下記コマンドで現在の回復パーティションを削除します。

delete partition override

⑦回復パーティションを再構成します。
下記コマンドでディスクの一覧を表示し、パーティションスタイルがGPTかMBRかを確認します。

list disk

システムディスクのGPT欄に”*”が表示されているか確認します。
恐らく行がずれて表示されますので注意が必要です。
チェックが入っていればGPT、無ければMBRです。
今回はGPTになっています。
GPTの場合とMBRの場合でこの後のコマンドが変わります。
GPTの場合はまず下記コマンドで回復パーティションを作成します。

create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac

その後、下記コマンドを実行し回復パーティションに属性を割り当てます。

gpt attributes =0x8000000000000001

MBRの場合は上記2つのコマンドを実行せず、代わりに下記コマンドを実行します。

create partition primary id=27

続いて下記コマンドで回復パーティションの書式を設定します。

format quick fs=ntfs label="Windows RE tools"

続いてMBRの場合のみ下記コマンドを実行します。

set id=27

⑧回復パーティションが正しく作成されているか確認します。
下記コマンドでボリュームの一覧を表示します。

list vol

回復パーティション(Windows RE)が作成されており、容量が250MB増えている事を確認します。
確認が出来ましたら下記コマンドでDiskPartを終了します。

exit

DISKPART>からsystem32>に戻ります。

⑩回復環境を再度有効化します。
下記コマンドを実行します。

reagentc /enable

下記コマンドを実行し現在回復環境が有効になったかどうかを確認します。

reagentc /info

WindowsREの状態がEnabledになっている事を確認します。
確認出来ましたら作業終了になりますのでコマンドプロンプトを閉じます。

⑪Windowsアップデートを実行しKB5034441がインストール成功する事を確認します。
今回は無事にアップデートに成功しました。

また、ディスクの管理より回復パーティションが250MB増えている事も確認しておきます。

●おわりに

今回コマンドによる作業手順を紹介させて頂きましたが、実際に行う事はおすすめ出来ません。
KB5034441を放置した事によって問題が発生する可能性とコマンド操作を間違えてしまって問題が発生する可能性を考えると、後者の方が可能性が非常に高いと思います。
私自身プライベートのPCであれば同じ状態になったとしても実行する気になりません。
実行する場合は下記Microsoftの公式ページや他のサイトの情報等も確認し、十分に注意の上で行う様にお願い致します。

当社のユースウェア保守をご契約頂きますとリモートや訪問でのサポートが無償となります。
トラブルでお困りであれば一度ご検討下さい。

メールでの問い合わせはこちら

お問い合わせフォーム

最近の記事

  • 関連記事
PAGE TOP