連載
» 2018年08月09日 05時00分 公開

Windows 10の回復パーティションから消えた「WinRE」の行方その知識、ホントに正しい? Windowsにまつわる都市伝説(116)(2/3 ページ)

[山市良,テクニカルライター]

回復パーティションから消えたWinRE、なぜか「C:\Recovery」の中に

 ここまでの話は、つい最近までWindows 10のアップグレードのタイミングでパーティション構成が変更されることについて、筆者が想像したことです。2018年7月10日(米国時間)にWindows 10 バージョン1803が「半期チャネル(Semi-Annual Channel:SAC)」にリリースされました。このタイミングで、更新されたインストールメディア(OSビルド17134.112)が利用可能になったのですが、回復パーティションの追加よりも衝撃の大きな事象に遭遇しました。

 きっかけは、以前に仕事を依頼されたことがある、とあるPCメーカーの方から、半期チャネル(SAC)リリースのWindows 10 バージョン1803のメディア(OSビルド17134.112ベース)で新規インストールすると、回復パーティションが空っぽになるという情報をいただいたことです。

 仮想マシン環境(UEFI構成)でWindows 10 バージョン1803の初期のメディア(OSビルド17134.1)と2018年7月の更新メディア(OSビルド17134.112)でクリーンインストールしてみると、確かに様子が異なります。

 以下の画面3は、Windows 10 バージョン1803の初期(2018年4月)のメディアでクリーンインストールした場合です。これまで通り、500MBの回復パーティションにWinREのイメージが配置されているのが分かります。また、画面4は、2018年7月に更新されたメディアでクリーンインストールした場合です。500MBの回復パーティションからWinREのイメージが消えてしまいました。いったいどこにいったのでしょう。

画面3 画面3 UEFIベースの仮想マシンにWindows 10 バージョン1803の2018年4月メディアでクリーンインストールしたもの。パーティション構成とWinREの配置はこれまで通り
画面4 画面4 UEFIベースの仮想マシンにWindows 10 バージョン1803の2018年7月メディアでクリーンインストールしたもの。パーティション構成は同じだが、WinREが見当たらない

 ローカルにインストールされているWindowsを回復するためのWinREの登録状況は、次のコマンドラインを管理者として実行することで確認できます。なお、オンラインのWindowsの場合、「/target」オプション以降は省略可能です。

reagentc /info /target <Windowsディレクトリのパス>

 このコマンドを実行して確認してみると、Windows 10 バージョン1803の2018年7月メディアでクリーンインストールしたシステムのWinREは、回復パーティション(パーティション1)ではなく、Windowsパーティション(パーティション4)の「C:\Recovery\WindowsRE」ディレクトリに配置されていました(画面5)。つまり、このUEFIシステムの回復パーティションは、何にも利用されていない空っぽの状態です。

画面5 画面5 消えたWinREのイメージは、Windowsパーティションの「C:\Recovery\WindowsRE」ディレクトリにあった

 BIOSシステムの場合も同様です。2018年4月と7月のどちらのメディアでクリーンインストールしても、約500MBのシステムパーティションと残りのWindowsパーティションの2パーティション構成でインストールされますが、4月メディアのWinREはシステムパーティション(パーティション1)に、7月メディアのWinREはWindowsパーティション(パーティション2)の「C:\Recovery\WindowsRE」ディレクトリに配置されていました。

 詳しい手順は省きますが(下記のWebサイトを参照)、「C:\Recovery\WindowsRE\winre.wim」をUEFIシステムの回復パーティションや、BIOSシステムのシステムパーティションあった元の場所にコピーして、「reagentc /disable」コマンド、「reagentc /setreimage」コマンド、「reagentc /enable」コマンドを実行してみましたが、「C:\Recovery\WindowsRE」ディレクトリが復活してしまいます。

 画面5をよく見ると、WinRE.wimのサイズが500MBを超えているではありませんか(64bit OS用のWinRE.wimは約527MB、32bit OS用のWinRE.wimは約437MB)。

 以下のドキュメントには、回復パーティションが500MBより小さい場合は50MBの空き領域、500MB以上の場合は320MBの空き領域(1GB以上の場合は1GBの空きを推奨)を確保しなければならないように記述されています。

 BIOSシステムでシステムパーティションと兼用する場合は、ブート構成(\BOOT\BCD)のサイズ(約50MB)も考慮する必要があります。つまり、最新のWinRE.wimは64bit、32bitともに500MBのシステムパーティションや回復パーティションには収まらないのです。そして、おそらくWinREを設定する際にWinRE.wimの配置先に十分な空き領域がない場合、「C:\Recovery\WindowsRE」がセットアップされてしまうようなのです。

 これが、Windows 10 バージョン1703の半期チャネル(SAC)リリースの不具合なのか、仕様変更なのかは分かりませんが、筆者は次のように想像しています。

 機能更新プログラムやインストールメディアによるアップグレードの場合、現在のWinREが配置されているパーティション(システムパーティションなど)の空き領域を確認して、不足気味であればWindowsパーティションを縮小し、新たに回復パーティションを作成するため、問題は発生しない。


 しかし、クリーンインストールの場合は、WinRE.wimの巨大化について考慮しておらず、これまでのロジックが変更されていないため(BIOSシステムへの2018年4月メディアによるインストールが2パーティション構成、アップグレードが3パーティション構成であることから想像)、これまで通りのパーティション構成で進めてしまい、WinRE登録時の空き領域不足の結果、「C:\Recovery\WindowsRE」が作成されてしまう。


 2018年7月メディアを使用した以前のバージョンからのアップグレードは試していませんが、そんな感じに見えます。

Copyright © ITmedia, Inc. All Rights Reserved.

「Windows 7」サポート終了 対策ナビ

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。