これまで「Windows回復環境(WinRE)」は、Windowsの新しいバージョンのインストールまたはアップグレード時にセットアップされ、その後は通常、次のバージョンまでアップデートされることはありませんでした。Windows 11 バージョン22H2では、それが毎月の品質更新プログラムでアップデートされるように変更されたそうです。この変更は、Windows 11 バージョン22H2以降だけでなく、Windows 11 バージョン21H2に対しても行われているようです。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
本連載第254回では、アップグレードの繰り返しで増えてしまった「回復パーティション」の残骸をきれいに整理する方法を紹介しました。
その際、当時、問題となっていた「Windows回復環境(WinRE)」の「BitLockerセキュリティ機能のバイパスの脆弱(ぜいじゃく)性」にも対策しました。この脆弱性対策は、WinREのイメージ(回復パーティション\Recovery\WindowsRE\winre.wim)にオフラインパッチするという少し厄介な手順が必要でした。Microsoftは必要な作業を支援するスクリプトを提供しましたが、ほとんどの場合、回復パーティションの容量不足でスクリプトが失敗してしまうことも指摘しました。Windowsのインストーラーが自動作成する回復パーティションのサイズでは、容量不足で失敗してしまうのです。
このWinREの脆弱性問題もあってなのでしょうか、Microsoftは2023年6月末リリースの「オプションの更新プログラム(Cリリース)」から、Windows Updateまたは「Windows Server Update Services(WSUS)」経由で更新プログラムを受け取るデバイスについて、毎月の累積的な更新プログラム(Bリリース、Cリリース)を使用して、WinREをアップデートするように変更したことを、以下の技術ドキュメントで明らかにしました。ドキュメントは「Windows 11」のバージョン22H2を対象としていますが、バージョン21H2にも適用される可能性があります。
WinREの脆弱性に対策済みであった筆者のメインPCで、回復パーティションにドライブ文字を割り当て、WinREイメージのタイムスタンプを確認したところ、直近の累積更新プログラムをインストールするタイミングでWinREのイメージがアップデートされていることを確認できました(画面1)。
具体的には、コマンドプロンプトを管理者として開き、「DISKPART」コマンドを次のように実行して回復パーティションにドライブ文字Rを割り当てます。
DISKPART DISKPART> LIST DISK DISKPART> SELECT DISK 0 (OSディスクが「0」の場合) DISKPART> LIST PARITION DISKPART> SELECT PARTITION 4 (回復パーティションが「4」の場合) DISKPART> ASSIGN LETTER=R
別のコマンドプロンプトを開いて、以下のコマンドラインを実行し、「Winre.wim」のタイムスタンプを確認します。
DIR R:\Recovery\WindowsRE /a
DISKPARTコマンドのプロンプトに戻り、回復パーティションに割り当てたドライブ文字を削除して、終了します。
DISKPART> REMOVE LETTER=R DISKPART> EXIT
累積更新プログラムによって、WinREがアップデートされるかどうかは、回復パーティションの空き容量に左右されるようです。以前に対策済みの筆者のメインPCは、回復パーティションに1GB近く割り当てています。一方、Windowsのインストーラーによって自動作成された600MB程度の回復パーティションの場合は、WinREがアップデートされることはありませんでした(画面2)。
「KB5028997」の技術ドキュメントでは、更新できない場合、「Windows Recovery Environment servicing failed.」エラーメッセージを受け取ると説明されています。しかし、Windows Updateの実行中も実行後も、WinREがアップデートされなかったPCでそのようなエラーメッセージを受け取ることはなく、イベントログやWindows Updateログ(Get-WindowsUpdateLogで生成)に関連する記録も残っていません。
累積更新プログラムは成功したとして、更新の履歴に記録されています。技術ドキュメントの説明とは異なり、WinREがアップデートできない場合は、エラーメッセージを出力するのではなく、単にサイレント失敗する(更新しない)だけのようです。
「KB5028997」の技術ドキュメントでは、累積的な更新プログラムによるWinREのアップデートを可能にするために、現在のWinREのイメージはそのままに、回復パーティションのサイズを100MB単位で増やす方法が示されています。
Windows 11 バージョン22H2以降を利用しているのであれば、都合の良いタイミングで回復パーティションのサイズを拡張しておくことをお勧めします。既にインストール済みになっている、これまでの累積的な更新プログラムでのWinREのアップデート失敗が、サイズ拡張によって再試行されることはありませんが、次回以降の累積的な更新プログラムのインストールのタイミングで、WinREがアップデートされるようになるはずです。
そのためには、コマンドプロンプトを管理者として開き、「reagentc」コマンドで現在のWinREの状態を確認し(/info)、いったん無効化(/disable)します。WinREを無効化すると、「C:\Windows\System32\Recovery」に現在のWinREイメージが退避されます。
reagentc /info reagentc /disable
管理者として開いたコマンドプロンプトで、DISKPARTコマンドを実行し、以下の手順でOSディスクのOS用パーティション(「\Windows」ディレクトリが存在するプライマリーパーティション)から、回復パーティション用に追加の領域を圧縮して解放します。
次に、回復パーティションを選択し、いったんパーティションを削除してから、再作成します。再作成時、OS用パーティションの縮小で得た追加のサイズを含めて、新しいサイズでパーティションが作成されます(画面3)。
その後、回復パーティション用のIDと属性をセットし、DISKPARTコマンドを終了します。筆者の経験上、現在の回復パーティションとOSパーティションからの縮小分を合わせて1GB近く(950MB以上)確保できれば十分だと思います。なお、技術ドキュメントには、MBR(マスターブートレコード)とGPTディスクのそれぞれの手順が説明されていますが、Windows 11のOSディスクはGPTディスクである必要があるため、MBRの設定については省略します。
DISKPART DISKPART> LIST DISK DISKPART> SELECT DISK 0 (OSディスクが「0」の場合) DISKPART> LIST PARTITION DISKPART> SELECT PARTITION 3 (OSパーティションが「3」の場合) DISKPART> SHRINK DESIRED=300 MINIMUM=300 (OSパーティションを300MB縮小) DISKPART> SELECT PARTITION 4 (回復パーティションが「4」の場合) DISKPART> DELETE PARTITION OVERRIDE DISKPART> CREATE PARTITION PRIMARY DISKPART> FORMAT QUICK FS=NTFS LABEL="Windows RE tools" DISKPART> set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac DISKPART> gpt attributes=0x8000000000000001 DISKPART> LIST PARTITION DISKPART> EXIT
DISKPARTコマンドによる回復パーティションの再作成を終えたら、reagentcコマンドでWinREを再び有効化(/enable)します(画面4)。
reagentc /enable reagentc /info
回復パーティションを拡張したとしても、既にインストール済みの更新プログラムがWinREをアップデートすることはありません。次回の累積的な更新プログラムのインストールのタイミングで、WinREがアップデートされるはずです(画面5)。なお、インストールされているWindows 11 バージョン22H2のOSビルドに更新されるわけではなく、特定のコンポーネントだけが新しいバイナリに置き換わるようです。
なお、これからWindows 11をクリーンインストールする場合は、以下の記事を参考に、UEFI/GPTベースのパーティションを手動で作成し、回復パーティションにあらかじめ1GB程度のサイズを割り当てておくことをお勧めします。その場合、インストール後の回復パーティションのサイズ調整は不要になるはずです。
岩手県花巻市在住。Microsoft MVP 2008 to 2024(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.