Windows Server 擴充 C 槽:升級硬碟後延伸磁碟區與初始化新資料硬碟
透過客戶中心的升級選項為 JUSTG Windows VPS 增加 SSD 容量,或掛載額外硬碟之後,Windows 並不會自動使用新空間:它會以磁碟尾端的「未配置」空間,或一顆全新的未初始化硬碟出現。本文說明如何在 Windows Server 2016、2019、2022 上,用磁碟管理與 PowerShell 擴充 C 槽,遇到修復磁碟分割擋住「延伸磁碟區」時該怎麼處理,以及如何初始化並格式化新的資料硬碟。
步驟 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 應該已顯示升級後的容量。若仍是舊容量,請從 Windows 或客戶中心重新開機一次後再執行。圖形介面中對應的操作是 diskmgmt.msc → 動作 → 重新掃描磁碟。
步驟 2:在磁碟管理中延伸 C 槽(圖形介面)
在「磁碟管理」中對 C: 按右鍵,選擇延伸磁碟區。精靈會帶入所有相鄰的未配置空間,保留預設值並按完成即可。這項變更是線上進行,不需重新開機也不會中斷服務。若「延伸磁碟區」呈灰色,代表可用空間不在 C 槽正後方,請參考步驟 4。
步驟 3:用 PowerShell(Resize-Partition)延伸 C 槽
在 Server Core 或需要寫成腳本時,可以讓 Windows 回報 C 槽可達到的最大容量,再直接調整:
$max = (Get-PartitionSupportedSize -DriveLetter C).SizeMax
Resize-Partition -DriveLetter C -Size $max
Get-Volume -DriveLetter CGet-PartitionSupportedSize 會以位元組回傳最小與最大值。若 SizeMax 與目前容量相同,表示未配置空間沒有緊鄰 C 槽。
步驟 4:修復磁碟分割擋住擴充時的處理方式
部分 Windows Server 安裝會在 C 槽後方放一個約 500 MB 至 1 GB 的修復磁碟分割。磁碟分割只能往緊鄰的後方空間延伸,所以尾端的新容量就用不到。常見解法是先停用 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:$false超過 2 TB 的硬碟一定要用 GPT,MBR 無法定址更大的空間。範例使用 E 槽,是因為 D 槽常被虛擬光碟機占用。
步驟 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 槽應已顯示完整容量,新硬碟也會帶著標籤與可用空間出現。之後可視需要把資料、資料庫或網站檔案移到新磁碟區。
常見問題
擴充 C 槽需要關機嗎?
不需要。NTFS 磁碟區可以在 Windows 執行中直接延伸。只有在重新掃描後仍看不到新容量時,才需要重新開機。
JUSTG 獨立伺服器也能用同樣方式升級硬碟嗎?
獨立伺服器不提供自訂配置升級,如需更多儲存空間,請聯絡 Billing 或 Sales 更換更高等級的方案。VPS 則可在客戶中心的升級選項增加 SSD 容量。
刪除修復磁碟分割安全嗎?
遠端管理的伺服器很少用到 Windows RE,而且用 reagentc /enable 重新啟用後,它會存放在 C 槽內。無論如何,調整分割前請先做好備份。
如果看不到新空間或延伸失敗,請提交工單聯絡 JUSTG 技術支援,並附上步驟 1 的輸出,我們會從後端協助檢查硬碟。