はじめに
ディスクを増量したとき、Cドライブと未割り当て領域の間に回復パーティションがあると、「ディスクの管理」からCドライブをそのまま拡張できません。
回復パーティションを一度削除すれば、Windows標準の機能だけでもCドライブを拡張できます。ただし、拡張後にディスク末尾へ回復パーティションを作り直すと、次回のディスク増量時にも同じ作業が必要になります。
本記事ではGParted Liveを使用して回復パーティションをCドライブより前へ配置し、Cドライブをディスクの右端へ移動します。これにより、今後ディスクを増量したときは、回復パーティションを作り直さずにCドライブを拡張できます。
本記事の操作はパーティション構成を変更します。本記事を参考にした操作によって発生した起動不能、動作不良、データ消失などに関する問い合わせや個別対応は受け付けていません。
背景
Windows標準の「ディスクの管理」やDiskPartでボリュームを拡張するには、対象パーティションの直後に未割り当て領域が必要です。
Cドライブの後ろに回復パーティションがある場合、ディスクを増量すると次のような構成になります。
[EFI][MSR][C:][回復][追加した未割り当て領域]
この構成では、回復パーティションがCドライブの拡張を妨げます。
WebARENAのサポート記事で紹介されているように、回復パーティションを削除してCドライブを拡張したあと、ディスク末尾へ回復パーティションを作り直す方法もあります。ただし、この方法では次にディスクを増量したとき、再び回復パーティションがCドライブと未割り当て領域の間に入ります。
そこで、回復パーティションをCドライブより前へ移し、Cドライブをディスクの右端に配置します。以後、ディスクを増量すると、追加された未割り当て領域がCドライブの直後に並びます。
[EFI][MSR][回復][C:][追加した未割り当て領域]
ディスク構成
変更前は、Cドライブの直後に回復パーティションがある構成です。
[EFI][MSR][C:][回復]
現在使われている回復パーティションを削除し、Cドライブを右へ移動してから、その左側に1GBの回復パーティションを作り直します。変更後は次の構成になります。
[EFI][MSR][回復 1GB][C: 右端]
この記事では、UEFI/GPTでインストールされたWindowsを対象とします。Windows標準ツールではパーティションの開始位置を移動できないため、Cドライブの移動にはGParted Liveを使用します。
Windows回復環境(WinRE)は、通常は回復パーティション内に保存されています。この記事ではディスク領域を「回復パーティション」、そこへ保存する回復環境を「WinRE」と記載します。
操作の途中でパーティション番号が変わる場合があります。容量、位置、種類を確認し、操作対象を間違えないよう注意してください。
GPartedで移動するのは未割り当て領域ではなく、CドライブのNTFSパーティションです。
事前確認
WinREの確認
管理者としてPowerShellを開き、現在使用しているWinREの場所を確認します。
reagentc /info
次のように表示されます。表示内容はOSの言語によって異なります。この記事では英語表示を使用します。
Windows Recovery Environment (Windows RE) and system reset configuration
Information:
Windows RE status: Enabled
Windows RE location: \\?\GLOBALROOT\device\harddisk0\partition4\Recovery\WindowsRE
Boot Configuration Data (BCD) identifier: <環境固有のGUID>
REAGENTC.EXE: Operation Successful.
このうち、Windows RE statusがEnabledになっていることを確認してください。Windows RE locationの例では、WinREはディスク0のパーティション4にあります。ここに表示されたディスク番号とパーティション番号を記録します。
ディスク構成の確認
DiskPartでOSディスクの構成を確認します。以降の<OSディスク番号>には、reagentc /infoとディスクの容量から特定した番号を指定します。
diskpart
list disk
select disk <OSディスク番号>
list partition
list volume
exit
list partitionは次のように表示されます。番号と容量は環境によって異なります。
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 System 100 MB 1024 KB
Partition 2 Reserved 16 MB 101 MB
Partition 3 Primary 99 GB 117 MB
Partition 4 Recovery 700 MB 99 GB
reagentc /infoで記録したパーティションがRecoveryと表示され、Cドライブに該当するPrimaryパーティションの直後にあることを確認してください。
list volumeは次のように表示されます。
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ----- ---------- ------- --------- --------
Volume 0 C Windows NTFS Partition 99 GB Healthy Boot
Volume 1 FAT32 Partition 100 MB Healthy System
Volume 2 NTFS Partition 700 MB Healthy Hidden
LtrがC、FsがNTFS、InfoがBootとなっているボリュームがCドライブです。EFIシステムパーティションはFAT32かつSystemと表示されます。MSRはlist volumeや「ディスクの管理」に表示されない場合があります。
BitLockerの確認
BitLockerの状態を確認します。
manage-bde -status C:
BitLockerが完全に復号されている場合は、次のように表示されます。
Volume C: [Windows]
[OS Volume]
Size: <Cドライブの容量>
BitLocker Version: None
Conversion Status: Fully Decrypted
Percentage Encrypted: 0.0%
Encryption Method: None
Protection Status: Protection Off
Lock Status: Unlocked
Key Protectors: None Found
このうち、Conversion StatusがFully Decrypted、Percentage Encryptedが0.0%になっていることを確認してください。
暗号化されている場合は、次のコマンドで復号します。
manage-bde -off C:
manage-bde -status C:
復号中はConversion StatusがDecryption in Progressと表示されます。Fully Decryptedになるまで待ってください。
ファイルシステムの確認
NTFSを検査します。
chkdsk C: /scan
問題がない場合、処理の最後に次のように表示されます。
Windows has scanned the file system and found no problems.
No further action is required.
この2行が表示され、修復を求めるメッセージがないことを確認してください。
手順
WinREを無効化する
WinREを無効化し、状態を確認します。
reagentc /disable
reagentc /info
無効化に成功すると、次のように表示されます。
REAGENTC.EXE: Operation Successful.
Windows Recovery Environment (Windows RE) and system reset configuration
Information:
Windows RE status: Disabled
Windows RE location:
Boot Configuration Data (BCD) identifier: 00000000-0000-0000-0000-000000000000
REAGENTC.EXE: Operation Successful.
このうち、Windows RE statusがDisabledになり、Windows RE locationが空欄になっていることを確認してください。
続いて、無効化によってCドライブへ戻されたWinREイメージを確認します。
Get-Item -LiteralPath 'C:\Windows\System32\Recovery\Winre.wim' -Force |
Format-List FullName,Length
ファイルが存在する場合は、次のようにフルパスとファイルサイズが表示されます。
FullName : C:\Windows\System32\Recovery\Winre.wim
Length : <環境によって異なるファイルサイズ>
FullNameにC:\Windows\System32\Recovery\Winre.wimが表示され、Lengthが0より大きいことを確認してください。
回復パーティションを削除する
Winre.wimを確認できたら、Cドライブの直後にある回復パーティションを削除します。削除するのは、無効化前のWindows RE locationが参照していたパーティションです。
detail partitionで、削除対象が無効化前に使われていた回復パーティションであることを確認してください。EFIシステムパーティション、MSR、Cドライブは削除しません。
diskpart
select disk <OSディスク番号>
list partition
select partition <回復パーティション番号>
detail partition
delete partition override
list partition
exit
削除に成功すると、次のメッセージが表示されます。
DiskPart successfully deleted the selected partition.
続くlist partitionでは、削除前にあったRecoveryパーティションが表示されなくなります。
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 System 100 MB 1024 KB
Partition 2 Reserved 16 MB 101 MB
Partition 3 Primary 99 GB 117 MB
回復パーティションを削除した時点のパーティション構成は次のとおりです。Cドライブの右側が未割り当て領域になり、回復パーティションは一時的になくなります。
[EFI][MSR][C:][未割り当て]
Windowsをシャットダウンします。
Stop-Computer
GParted Liveを起動する
GParted公式サイトから、ファイル名がgparted-live-<バージョン>-amd64.isoとなっている安定版のISOを取得します。
仮想マシンの場合は、利用している仮想化基盤からGParted Live ISOを仮想CD/DVDドライブへ接続します。物理マシンの場合は、ISOから起動用USBメモリを作成します。
Windowsを完全にシャットダウンした状態で、UEFIのブートメニューからISOまたはUSBメモリを選択します。GParted Liveのメニューでは、次の順に選択してグラフィカル画面を起動します。
GParted Live (Default settings)- 既定のキーマップ
- 英語
- グラフィカル画面の起動
GPartedでCドライブを右端へ移動する
GPartedを起動し、画面右上からOSディスクを選択します。ディスクの容量とパーティションの並び順を、Windows側で確認した内容と照合します。
[EFI FAT32][MSR][NTFS][未割り当て]
Cドライブがntfsではなくbitlockerと表示される場合は、Windows側での復号が完了していません。
Cドライブに該当するNTFSパーティションを右クリックし、Resize/Moveを選択します。ダイアログで次の値を指定します。
Free space preceding: 1024 MiB
Free space following: 0 MiB
Align to: MiB
既存の回復パーティションが1024MiBより小さい場合は、不足分だけCドライブが縮小されます。パーティション全体が右へ移動し、Cドライブの左側に1024MiBの未割り当て領域ができます。
Resize/Moveを選択し、Cドライブの左側に1024MiB、右側に0MiBの空き領域が設定されていることを確認します。
ツールバーの適用ボタンからApply All Operations→Applyを選択します。NTFSパーティションの移動には時間がかかる場合があります。完了したらGParted Liveをシャットダウンします。
GPartedの処理が完了した時点のパーティション構成は次のとおりです。
[EFI][MSR][未割り当て 1024MiB][C: 右端]
マシンの停止後、GParted Live ISOまたはUSBメモリを取り外します。
未割り当て領域を確認する
Windowsを起動します。ディスクチェックが自動で始まった場合は、そのまま完了を待ちます。
ログイン後に「ディスクの管理」を開き、MSRとCドライブの間に約1GBの未割り当て領域があることを確認します。
[EFI][MSR][未割り当て 約1GB][C: 右端]
回復パーティションを作成する
管理者としてPowerShellを開き、DiskPartで未割り当て領域に1GBのパーティションを作成します。
diskpart
select disk <OSディスク番号>
list partition
create partition primary size=1024
format quick fs=ntfs label="Windows RE tools"
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac override
gpt attributes=0x8000000000000001
assign letter=R
list partition
exit
各コマンドに成功すると、次のメッセージが順に表示されます。
DiskPart succeeded in creating the specified partition.
100 percent completed
DiskPart successfully formatted the volume.
DiskPart successfully set the partition ID.
DiskPart successfully assigned the attributes to the selected GPT partition.
DiskPart successfully assigned the drive letter or mount point.
最後のlist partitionは次のように表示されます。
Partition ### Type Size Offset
------------- ---------------- ------- -------
Partition 1 System 100 MB 1024 KB
Partition 2 Reserved 16 MB 101 MB
Partition 3 Recovery 1024 MB 117 MB
Partition 4 Primary 99 GB 1141 MB
新しいパーティションのTypeがRecovery、Sizeが1024 MBと表示され、Cドライブに該当するPrimaryパーティションの直前にあることを確認してください。
Windows RE toolsはNTFSのボリュームラベルです。続くset idとgpt attributesによって、Windowsから回復パーティションとして認識されます。
回復パーティションを作成した時点のパーティション構成は次のとおりです。
[EFI][MSR][回復 1GB][C: 右端]
WinREイメージを配置する
作成したパーティションへWinREイメージをコピーします。
New-Item -ItemType Directory -Path 'R:\Recovery\WindowsRE' -Force
Copy-Item `
-LiteralPath 'C:\Windows\System32\Recovery\Winre.wim' `
-Destination 'R:\Recovery\WindowsRE\Winre.wim' `
-Force
Get-Item -LiteralPath 'R:\Recovery\WindowsRE\Winre.wim' -Force |
Format-List FullName,Length
New-Itemでは作成したディレクトリが表示されます。Copy-Itemは成功しても何も表示しません。最後のGet-Itemは次のように表示されます。
FullName : R:\Recovery\WindowsRE\Winre.wim
Length : <コピー元と同じファイルサイズ>
FullNameがコピー先を示し、Lengthがコピー元のWinre.wimと同じ値になっていることを確認してください。
WinREを登録する
コピーしたWinREを登録して有効化します。
reagentc /setreimage /path R:\Recovery\WindowsRE
reagentc /enable
reagentc /info
登録と有効化に成功すると、次のように表示されます。
Directory set to: \\?\GLOBALROOT\device\harddisk0\partition3\Recovery\WindowsRE
REAGENTC.EXE: Operation Successful.
REAGENTC.EXE: Operation Successful.
Windows Recovery Environment (Windows RE) and system reset configuration
Information:
Windows RE status: Enabled
Windows RE location: \\?\GLOBALROOT\device\harddisk0\partition3\Recovery\WindowsRE
Boot Configuration Data (BCD) identifier: <環境固有のGUID>
REAGENTC.EXE: Operation Successful.
このうち、Windows RE statusがEnabledになっていることを確認してください。Windows RE locationのパーティション番号が、新しく作成した1GBの回復パーティションと一致することも確認します。
ドライブ文字を削除する
最後に、回復パーティションからドライブ文字を削除します。
diskpart
select disk <OSディスク番号>
list partition
select partition <新しく作成した1GBの回復パーティション番号>
detail partition
remove letter=R
exit
ドライブ文字の削除に成功すると、次のように表示されます。
DiskPart successfully removed the drive letter or mount point.
エクスプローラーを開き、R:ドライブが表示されないことを確認してください。
動作確認
WinREを起動する
再起動後も画面を確認できるよう、仮想マシンのコンソールや物理マシンの画面を開いた状態で次のコマンドを実行します。
reagentc /boottore
Restart-Computer
reagentc /boottoreに成功すると、再起動前に次のように表示されます。
REAGENTC.EXE: Operation Successful.
再起動後にWindows回復環境が表示されたら、「続行」を選択してWindowsへ戻ります。
Windows起動後の状態を確認する
Windowsの起動後、WinREとファイルシステムを確認します。
reagentc /info
chkdsk C: /scan
reagentc /infoでは、次の2項目を確認してください。
Windows RE status: Enabled
Windows RE location: \\?\GLOBALROOT\device\harddisk0\partition3\Recovery\WindowsRE
chkdskの最後には、次の2行が表示されることを確認してください。
Windows has scanned the file system and found no problems.
No further action is required.
「ディスクの管理」で、最終的なパーティションの並びも確認します。
[EFI][MSR][回復 1GB][C: 右端]
補足
回復パーティションのサイズ
1GBはMicrosoftが指定する固定値ではありません。Microsoftの資料では、Winre.wimは通常500〜700MBで、カスタムパーティション構成では990MB以上かつ250MB以上の空き領域を確保する例が示されています。
今回はこの条件を満たし、GPartedとDiskPartの入力単位をそろえるため、1024MiBを使用しました。
なお、Microsoftが推奨する標準的な配置は、Windowsパーティションの直後に回復パーティションを置く構成です。この記事の配置はCドライブを物理ディスクの右端へ移動することを優先しているため、将来回復パーティションの拡張が必要になった場合は、同様にパーティションを移動する作業が必要になります。
おわりに
GParted Liveを使用することで、Windows標準ツールでは変更できないCドライブの開始位置を移動できました。古い回復パーティションを削除してからCドライブを右へ移動し、空いた領域へ回復パーティションとWinREを再配置するのが今回のポイントです。
パーティション番号は作業の途中で変わるため、DiskPartでは毎回list partitionとdetail partitionを使い、容量、種類、位置を確認しながら操作してください。
参考資料
- WebARENA: Windows Server 2022/Windows Server 2025でCドライブの容量の拡張を行いたい
- Microsoft Learn: UEFI/GPT-based hard drive partitions
- Microsoft Learn: REAgentC command-line options
- Microsoft Support: KB5028997 — Instructions to manually resize your partition to install the WinRE update
- GParted Manual
- GParted Live Manual