問題のUMPCをWindows 10 x86 バージョン1709のUSBインストールメディアで起動し、「Windowsセットアップ」の「今すぐインストール」のページが表示されたら「コンピューターを修復する」をクリックし、トラブルシューティングオプションの「コマンドプロンプト」を開始します。つまり、Windows 10 x86 バージョン1709版のWindows REのコマンドプロンプトを開きます。
DISKPARTコマンドを実行して、ローカルディスク(ディスク番号0)を選択し、現在のパーティションを確認した上で、次のように操作して既存のパーティションを削除します。
DISKPART DISKPART> list disk DISKPART> select disk 0 DISKPART> list partition DISKPART> select partition <パーティション番号> DISKPART> delete partition override DISKPART> select partition <パーティション番号> DISKPART> delete partition override DISKPART> ...
なお、問題のUMPCは、Windows Vistaからアップグレードを繰り返してきたもので、回復パーティションが2つ存在していました(画面3)。ちなみに、最後に作成したシステムイメージのバックアップに含まれるのは、パーティション番号3のWindowsパーティション(古くはブートパーティションと呼ばれていたC:ドライブのパーティション)とパーティション番号4のシステム(兼回復ツール用)パーティションだけでした。
前方の2つのパーティションは、Windows 10の稼働には使用されていないものですが、先頭にある小さなOEMパーティションには、このPC専用のツール類が入っていると思うので、このパーティションだけを残して全て削除しました(OEMパーティションを削除しても不都合はなかったかもしれません)。
不要なパーティションを削除したら、新しいパーティションを作成します。レガシーなBIOSシステムであるため、500MB以上のシステムパーティションをアクティブパーティション、残りをWindowsパーティションとして作成し、両者をNTFS形式で初期化します。また、システムパーティションとWindowsパーティションのそれぞれに、「S」と「W」のドライブ文字を割り当てます(作業用のドライブ文字のため別の文字でも構いません)。
DISKPART> create partition primary size=500 DISKPART> format quick fs=NTFS label=System DISKPART> assign letter=S DISKPART> active DISKPART> create partition primary DISKPART> format quick fs=NTFS label=Windows DISKPART> assign letter=W DISKPART> exit
参考までに、BIOS/MBRベースのパーティション構成、およびUEFI/GPTベースのパーティション構成については、それぞれ、以下のドキュメントで詳しく説明されています。
DISKPARTコマンドを終了し、先ほど仮想マシンからキャプチャーして作成したWIMファイルのパスを確認し、次のコマンドラインを実行します。これで、仮想マシンのC:ドライブの内容が、Windowsパーティション(作業用のW:ドライブ)に展開されます。
DISM /Apply-Image /ImageFile:<パス>\myimage.wim /Index:1 /Applydir:W:\
イメージの展開が完了したら、次のコマンドラインを実行して、システムパーティション(作業用のS:ドライブ)にブートファイル(Windowsブートマネージャーとブート構成データ)を作成します。ちなみに、UEFIベースのシステムの場合は「/f UEFI」を指定します。
BCDBOOT W:\Windows /l ja-jp /s S: /f BIOS
システムパーティション(作業用のS:ドライブ)に作成されたブート構成データの既定の起動エントリで、「detecthal」オプションを有効にします。これにより、次回起動時にハードウェアの検出とインストールが行われます。現在のイメージがHyper-V仮想マシンのハードウェアで動作していたものであることを思い出してください。なお、このオプションは、起動が完了したら削除するのを忘れないでください。
BCDEDIT /store S:\boot\bcd /set {default} detecthal on
最後に、Windows RE環境をローカルディスクにインストールします。Windows 10 x86 バージョン1803のWindows RE環境は、このUMPCではSTOPエラーになることが分かっているため、Windows 10 x86 バージョン1709のWindows RE環境をインストールします。今回の実験的な試みの1つ目のポイント、問題のPCでWindowsセットアップを使用せずにWindows 10 x86 バージョン1803をクリーンインストールすることです。Windows RE環境の問題の回避は、2つ目のポイントです。
必要なファイルは、このUMPCを起動したWindows 10 x86 バージョン1709のUSBインストールメディアの中にあります。まず、Windowsパーティション(作業用のW:ドライブ)に作業用のディレクトリ(W:\work\mount)を作成し、インストールメディア内の「Sources\Install.wim」を読み取り専用でマウントします。なお、Windows 10メディア作成ツールで作成したインストールメディアの場合は「Install.wim」ではなく、「Install.esd」の形式で格納されています。その場合、Install.wim形式に変換するという作業がさらに必要になります(それには「DISM /Export-Image」コマンドを使用します)。
MKDIR W:\work\mount DISM /Mount-Image /ImageFile:<メディアのドライブ>:\Sources\Install.wim /Index:1 /Mountdir:W:\work\mount /ReadOnly
システムパーティション(作業用のS:ドライブ)に回復ツール用のディレクトリ「\Recovery\WindowsRE」を作成し、「xcopy」コマンド(「/h」オプション付き)でマウント先の「Windows\System32\Recovery\Winre.wim」を回復ツール用ディレクトリにコピーします。
MKDIR S:\Recovery\WindowsRE XCOPY /h W:\work\mount\Windows\System32\Recovery\Winre.wim S:\Recovery\WindowsRE
マウント先の「Windows\System32\reagentc.exe」コマンドを使用して、回復ツールのパスをWindowsパーティション(作業用のW:ドライブ)のWindowsインストールの回復用に登録し、有効化します(画面4)。Windows 10インストールのGUIDは、BCDEDITコマンドの「/v」オプションで既定の起動エントリのidentifierで確認します。
W:\work\mount\Windows\System32\reagentc /setreimage /path S:\Recovery\WindowsRE /target W:\Windows BCDEDIT /store S:\boot\bcd /v W:\work\mount\Windows\System32\reagentc /enable /osguid {Windows 10インストールのGUID} W:\work\mount\Windows\System32\reagentc /info /target W:\Windows
最後のコマンドラインを実行して「Enable」になっていない(Disableのまま)の場合は、インストールメディアの「\Boot\Boot.sdi」を「S:\Recovery\WindowsRE」にコピーしてみてください。うまくいくかもしれません。なぜ「Enable」にならないことがあるのかよく分かりませんが、「Boot.sdi」のコピーで回避できた経験があります。
DISM /Unmount-Image /MountDir:W:\work\mount /Discard WPEUTIL reboot
Install.wimのマウントを解除し、PCを再起動します。
なお、Windows REの展開についてさらに詳しく知りたい場合は、以下の公式ドキュメントが参考になります。
Copyright © ITmedia, Inc. All Rights Reserved.