สำหรับการแปลง VHD ไปเป็น VHDX และทำการลดขนาดของ Disk (Shink เป็นไปได้แนะนำให้ทำใน Mode Offine ครับ) โดยใน ฺBlog นี้สอนแบบ Offline ด้วยโดยมีขั้นตอน ดังนี้
- จัดการไฟล์ VM ของ VHD เดิมให้เรียยร้อยก่อน อาทิ เช่น
- ลบไฟล์ที่ไม่จำเป็น
- ทำการ Disk Clear พื้นที่ Disk
- CD เข้าไป Path ที่มีไฟล์ vhd
- แปลงไฟล์ VHD ไปเป็น VHDX ด้วยคำสั่ง PowerShell ดังนี้
Convert-VHD -Path .\<ConvertDiskFile>.vhd -DestinationPath .\<NewDiskFile>.vhdx
- เก็บขนาดพื้นที่ Disk ก่อนการแก้ไข
$sizeBefore = (Get-Item .\<NewDiskFile>.vhdx).length Write-Host "Before $sizeBefore
- Mount ไฟล์ Disk อันนี้ต้องดูด้วยว่าไฟล์ที่ Mount มาแล้วจะได้ Drive อะไรครับ กรณีที่ขอยกตัวอย่างเป็น Drive H: ครับ
- ทำการ defrag disk
- เคลียร์ข้อมูลพวก sand
defrag H: /d #จัดการกรณีที่ทำ SAND defrag H: /x defrag H: /k /l defrag H: /x defrag H: /k /l
- Dismount Disk ออกมาครับ ด้วยคำสั่ง
Dismount-VHD .\<NewDiskFile>.vhdx
- ทำการ Optimize เพื่อลดขนาด Virtual Disk ครับ เอาแบบ FULL เลยนะครับนานนึงนึงแต่ลดพื้นที่ได้เยอะ
Optimize-VHD .\<NewDiskFile>.vhdx -Mode Full
- หาขนาดที่ลดลงได้ด้วยคำสั่ง
$sizeAfter = (Get-Item .\Win10TSY.vhdx).length Write-Host "After $sizeAfter" Write-Host "Total disk space Saved: $(($sizeBefore - $sizeAfter) /1Mb) MB"
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.