Windows ServerでCドライブを拡張する方法:ディスク増設後のボリューム拡張と新規ディスクの初期化
クライアントエリアのアップグレードオプションでJUSTG Windows VPSにSSD容量を追加したり、ディスクを増設したりしても、Windowsは新しい容量を自動では使いません。ディスク末尾の「未割り当て」領域、または初期化されていない新しいディスクとして表示されるだけです。このガイドでは、Windows Server 2016/2019/2022でCドライブを拡張する方法をディスクの管理とPowerShellの両方で解説し、回復パーティションが「ボリュームの拡張」を妨げる場合の対処、新しいデータディスクの初期化とフォーマットまで説明します。
ステップ1:ディスクを再スキャンして新しい容量を確認する
PowerShellを管理者として開き、ストレージのキャッシュを更新してから、ディスク一覧とシステムディスク(ディスク0)のパーティションを表示します。
Update-HostStorageCache
Get-Disk | Select-Object Number, FriendlyName, PartitionStyle, OperationalStatus, @{n='SizeGB';e={[math]::Round($_.Size/1GB,1)}}
Get-Partition -DiskNumber 0 | Select-Object PartitionNumber, DriveLetter, Type, @{n='SizeGB';e={[math]::Round($_.Size/1GB,1)}}ディスク0にアップグレード後の容量が表示されていればOKです。古い容量のままなら、Windowsまたはクライアントエリアから一度再起動し、もう一度実行してください。GUIでは diskmgmt.msc → 操作 → ディスクの再スキャン が同じ操作です。
ステップ2:ディスクの管理でCドライブを拡張する(GUI)
「ディスクの管理」でC:を右クリックし、ボリュームの拡張を選びます。ウィザードが隣接する未割り当て領域をすべて提示するので、既定値のまま完了をクリックします。オンラインで反映されるため再起動もサービス停止も不要です。「ボリュームの拡張」がグレーアウトしている場合は、空き領域がCの直後にないので、ステップ4を参照してください。
ステップ3:PowerShell(Resize-Partition)でCドライブを拡張する
Server Coreやスクリプトで作業する場合は、Cドライブが到達できる最大サイズをWindowsに問い合わせて、そのサイズに変更します。
$max = (Get-PartitionSupportedSize -DriveLetter C).SizeMax
Resize-Partition -DriveLetter C -Size $max
Get-Volume -DriveLetter CGet-PartitionSupportedSize は最小値と最大値をバイト単位で返します。SizeMax が現在のサイズと同じなら、未割り当て領域がCに隣接していません。
ステップ4:回復パーティションが拡張を邪魔している場合
Windows Serverのインストールによっては、Cの直後に500MB〜1GBほどの回復パーティションが置かれています。パーティションはすぐ後ろの領域にしか広げられないため、末尾に増えた容量は使えません。一般的な対処は、Windows REを無効化して回復パーティションを削除し、Cを拡張してからWindows REを再度有効にする方法です(有効化後はC:\Windows内に保存されます)。ステップ1の結果でTypeが Recovery のパーティション番号を確認してください。例ではパーティション4です。
reagentc /info
reagentc /disable
diskpart
DISKPART> list disk
DISKPART> select disk 0
DISKPART> list partition
DISKPART> select partition 4
DISKPART> delete partition override
DISKPART> exit
# Extend C: (Step 3), then re-enable WinRE
reagentc /enabledelete partition override は元に戻せません。選択しているのがディスク0のRecoveryパーティションであり、Cやデータ用パーティションでないことを必ず確認してください。ステップ5:新しいデータディスクを初期化してフォーマットする
新しく追加したディスクは初期化されていません(RAW)と表示されます。ディスクの管理を開くと通常「ディスクの初期化」ダイアログが出るのでGPTを選び、未割り当て領域を右クリックして新しいシンプルボリュームを作成します。PowerShellでは、RAWディスクの番号を指定して次のように実行します。
Get-Disk | Where-Object PartitionStyle -eq 'RAW'
# If the disk is offline or read-only
Set-Disk -Number 1 -IsOffline $false
Set-Disk -Number 1 -IsReadOnly $false
Initialize-Disk -Number 1 -PartitionStyle GPT
New-Partition -DiskNumber 1 -UseMaximumSize -DriveLetter E
Format-Volume -DriveLetter E -FileSystem NTFS -NewFileSystemLabel "Data" -Confirm:$false2TBを超えるディスクは必ずGPTにしてください。MBRではそれ以上の容量を扱えません。D:は仮想CD-ROMドライブが使っていることが多いため、例ではEを割り当てています。
ステップ6:結果を確認する
Get-Volume | Where-Object DriveLetter | Format-Table DriveLetter, FileSystemLabel, FileSystem, @{n='SizeGB';e={[math]::Round($_.Size/1GB,1)}}, @{n='FreeGB';e={[math]::Round($_.SizeRemaining/1GB,1)}}Cドライブが全容量で表示され、新しいディスクもラベルと空き容量付きで表示されていれば完了です。必要に応じてデータやデータベース、Webサイトのファイルを新しいボリュームへ移しましょう。
よくある質問
Cドライブを拡張するのにサーバーの停止は必要ですか?
不要です。NTFSボリュームはWindowsが動いたまま拡張できます。再スキャンしても新しい容量が見えない場合だけ再起動してください。
JUSTGの専用サーバーも同じようにディスクをアップグレードできますか?
専用サーバーはカスタム構成でのアップグレードを行っていません。容量を増やしたい場合はBillingまたはSalesに連絡し、上位プランへ移行してください。VPSならクライアントエリアのアップグレードオプションからSSDを追加できます。
回復パーティションを削除しても大丈夫ですか?
リモートで管理するサーバーではWindows REを使う機会はほとんどなく、reagentc /enable で再有効化するとCドライブ内に保存されます。いずれにしても、パーティション変更の前にはバックアップを取ってください。
新しい容量が表示されない、拡張に失敗するといった場合は、ステップ1の出力を添えてチケットを送信してください。JUSTGテクニカルサポートがディスクの状態を確認します。