Misc.

2018/08/13

Windows 10 ver 1803 のクリーンインストール(WinRE 問題を回避しながら、シンプルなパーティション構成で)

以下の投稿や投稿の中にある @IT さんの記事で書いたように、Windows 10 バージョン 1803 (April 2018 Update)をインストールメディアからベアメタル PC にクリーンインストールした場合、Windows 10 に”すべてお任せ”しちゃうと、Windows 回復環境(WinRE)が C:\Recovery\WindowsRE にセットアップされてしまうという問題の、さらに補足。

Windows 10 の追加の OEM パーティションの謎(が解けたかも)(2018/08/09)

Windows 10 バージョン 1709 以前をクリーンインストールする場合も、機能更新後に追加の回復(OEM)パーティションが追加されるのを避けるには、以下の成功した手順でインストールするといいかも。

クリーンインストールの場合は、クリーンインストールに加えて、アップグレードインストールと言ういう解決策を考えました。しかし、それだと無駄な回復パーティションができてしまうことがあります(UEFI システムの場合は 2 つ目の回復パーティションができて、1 つ目は使用されなくなる)。再インストールしてもいい、あるいはこれからクリーンインストールするなら、無駄なパーティションを作成しないで済む方法があると思って、ちょっとお試し。

× 失敗した手順


 「Windowsセットアップ」で少し小さめ(-2GBとか)のパーティションを新規に作成すると、よさげなサイズのシステムパーティション(BIOSの場合)や回復パーティション(UEFI)の場合を作ってくれるようなので、その後、空いた残りを最後のパーティション(Windows パーティション用のプライマリ パーティション)に拡張してくっつけちゃえば、無駄なパーティションができなくて済むと思いました。

が、この案はダメでした。


BIOS システムの場合はこんな感じ。

549 MB という中途半端でよさげなサイズのシステムパーティションが作成された。


これでスッキリするはずと思いきや...

C:\Recovery\WindowsRE (C:\ は Partition 2)に WinRE がセットアップされてる(泣)。549 MB じゃあ足りないんだよ(8/9 の投稿で書いたように、500 MB 以上のパーティションだと 437+BCD 50 +Free 320=807 MB 必要なはず、500 MB 未満パーティションの 50MB くらいしか空きを考えていない?)。

少しお任せしてみたけど、ダメだこりゃ。却下。


レ 成功した手順


DISKPART コマンドで全パーティションをカスタムで構成しなきゃ無理なのかな? たぶんそうなんだろうと思いますが、試してみる気は失せました(そんなクリーンインストールなんていやだ)が、BIOS と UEFI の両システムでやってみました(UEFI システムでは未確認)

インストールメディアで PC を起動して、「Windows セットアップ」が開始したら、[Shift]+[F10]キーを押して、Windows プレインストール環境(WinPE)のコマンドプロンプトを開き、以下のドキュメントを参考に DISKPART コマンドでパーティションを構成します。それぞれのドキュメントの shrink minimum=500 の 500 を 1024 とかにすればいいと思う。

BIOS/MBR-based hard drive partitions
[URL] https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/configure-biosmbr-based-hard-drive-partitions
UEFI/GPT-based hard drive partitions
[URL] https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/configure-uefigpt-based-hard-drive-partitions


上のドキュメントでは、パーティション構成をテキストファイル(CreatePartitions-BIOS.txt または CreatePartitions-UEFI.txt)に保存して、DISKPART /s オプションにテキストファイルを渡していますが、DISKPART コマンドを対話的に実行して手動でコマンド(select disk 0 から exit まで)を実行していけばいいです。

BIOS システムならこういう感じ。

X:\Sources> diskpart
DISKPART> select disk 0
DISKPART> clean
DISKPART> create partition primary size=100
DISKPART> format quick fs=ntfs label="System"
DISKPART> assign letter="S"    (これは省略可)
DISKPART> active
DISKPART> create partition primary
DISKPART> shrink minimum=1024
DISKPART> format quick fs=ntfs label="Windows"
DISKPART> assign letter="W"    (これは省略可)
DISKPART> create partition primary
DISKPART> format quick fs=ntfs label="Recovery"
DISKPART> assign letter="R"    (これは省略可)
DISKPART> set id=27              
(これはシステム
(回復/OEM)パーティションの定義)
DISKPART> list volume             (これは確認してるだけ)
DISKPART> exit
X:\Sources> exit


WinRE は無事、1GB の回復パーティション(Partition 3)にセットアップされましたとさ。(※BIOS システムの場合でもシステムパーティションとの兼用はやめて、ディスクの最後尾の回復パーティションを準備しましょう。システムパーティションは最小の100MBあれば十分。)



回復パーティションの空き領域が 100 %に見えますが、ドライブ文字を割り当てればちゃんと入っているのがわかります(→ 右の画面は、アップグレードした PC のもので、上のクリーンインストールしたものとは別ですが)。


UEFI システムならこんな感じ。

X:\Sources> diskpart
DISKPART> select disk 0
DISKPART> clean
DISKPART> convert gpt
DISKPART> create partition efi size=100
DISKPART> format quick fs=fat32 label="System"
DISKPART> assign letter="S"    (これは省略可)
DISKPART> create partition msr size=16
DISKPART> create partition primary
DISKPART> shrink minimum=1024
DISKPART> format quick fs=ntfs label="Windows"
DISKPART> assign letter="W"    (これは省略可)
DISKPART> create partition primary
DISKPART> format quick fs=ntfs label="Recovery tools"
DISKPART> assign letter="R"    (これは省略可)
DISKPART> set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
(これはPARTITION_MSFT_RECOVERY_GUID の指定)
DISKPART> gpt attributes=0x8000000000000001
(これは GPT_ATTRIBUTE_PLATFORM_REQUIRED (0x1) +GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER(0x8000000000000000)の指定)
DISKPART> list volume             (これは確認してるだけ)
DISKPART> exit
X:\Sources> exit

こちらも、ディスクの先頭と最後に回復(OEM)パーティションが 2 つある気持ち悪い状態を回避できて、スッキリ。こちらは EFI パーティションの空き領域が 100%空きに見えますが、ちゃんと入ってます。この辺の見え方も Windows 10 の謎。

※ 回復(OEM)パーティションはディスクの最後にあっても拡張できませんが(→)、削除、Windows パーティションの縮小、回復(OEM)パーティションの再作成、WinRE のセットアップで拡張できるので、今後もシンプルなパーティション構成を維持できると思います。


もう一度、心の叫び。こんなクリーンインストールなんてイヤだ。


アップグレードの場合は、美しくないパーティション構成のまま使うのが一番、面倒ごとはないと思いますが、次の機能更新でさらにパーティションを追加してくれちゃったりしたら怒るでホンマ。

既定のパーティション構成がドキュメントの仕様と実際では異なる件

BIOS/MBR-based hard drive partitionsUEFI/GPT-based hard drive partitions の既定のパーティション構成って、クリーンインストールの既定の構成と違うんですよね。例えば、UEFI システムの場合、既定ではPartition 1に回復パーティションが作られちゃうけど、以下のドキュメントだとディスクの最後の方に。Windows 10 ver 1709 や ver 1803 (2018/4版)までは、従来の既定のパーティション構成のシステム パーティションや回復パーティション(499MBや500MB)に WinRE が収まってたのに、ver1803 (2018/7版)から収まらない状況になって、WinRE 問題が顕在化したってことだと思います。公式ドキュメントの仕様は、後付けの仕様なんでしょうね。

以下、ドキュメント上の既定のパーティション構成ではない、Windows 10 の以前の既定のパーティション構成で平和だったころのパーティション構成。Windows 8.1 の既定のシステム パーティションは 350 MB(BIOS/MBR の場合)だったので、500MB のこれは、確かに Windows 10 の既定のパーティション構成だった(と思う)。

BIOS システムのクリーンインストール
(ver 1803 2018/4 または 2018/7 にアップグレードすると、ディスク 0 にパーティション 3 に回復(OEM)パーティションが追加されると思う)

UEFI システムのクリーンインストール
(ver 1803 2018/7 版にアップグレードすると、ディスク 0 にパーティション 5 に 2 つ目の回復(OEM)パーティションが追加されると思う)

さらに厄介なことに、公式ドキュメントの中には、Partition 1 に WinRE がある前提で書いてあるものもあるので注意が必要。例えば、以下の UEFI 向けの記述とか。

Deploy Windows RE
[URL] https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/deploy-windows-re

ちなみに、Windows 8.1 以前の既定のパーティション構成はこちら(↓)。Windows 10 の「Windows セットアップ」は、350 MBのシステム パーティションを 500 MBに拡張するとかしたけど、基本的にこの時代の Default 構成を引き継いでいるらしい。

Configure BIOS/MBR-Based Hard Drive Partitions
[URL] https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh825146%28v%3dwin.10%29
Configure UEFI/GPT-Based Hard Drive Partitions
[URL] https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/hh824839(v%3dwin.10)

Windows パーティションを「ブート(Boot)パーティション」、ブート環境が入ったパーティションを「システム(System)パーティション」と呼んでいて、逆じゃねなんて言ってみたり、両者をあわせて 1 パーティション構成でやっていたりした、牧歌的な時代が懐かしい(Windows XP/2003 以前)。そういえば、1 つのディスクを Windows と データ用の複数パーティションに分けたりしてたっけ。今じゃ、アップグレード時にパーティションに手を出されるので怖い。

2 件のコメント:

  1. WindowsRE の場所は partition3 に成っていますが ディスクの管理 で 空き領域 1.00GB 、 空き領域の割合 100% に成っているのは何かおかしいんではないのでしょうか?

    返信削除
  2. ディスクの管理スナップインは中身があっても空き100%を示すことがあるようです。不具合なのか仕様なのか知りませんが、ドライブ文字を割り当てて確認すれば中身があることを確認できます。

    返信削除

注: コメントを投稿できるのは、このブログのメンバーだけです。