有時我們在使用Virtualbox虛擬機時,分配給虛擬機的磁盤空間太小,導致後期需要擴容,通過以下方法可以擴展磁盤空間。
增強虛擬磁盤空間容量(VDI)
擴展前最好把所有快照刪除掉!
方法一:擴展磁盤空間
打開Virtualbox所在的安裝目錄,執行以下命令,命令中的虛擬有磁盤路徑改成自己的:
//查看虛擬磁盤空間信息,確認確實是需要擴容的虛擬硬盤。
VBoxManage showhdinfo "H:\VirtualBox VMs\Ubuntu_14.04\Ubuntu_14.04.vdi"
//計算出要擴容的空間大小,我這裏是要擴展到100G(1024*1024*1024*100)。
set /a 1024*100
//擴展虛擬硬盤空間,必須是動態分配模式的硬盤不能是固定大小模式的,最後的數字替換成上面計算出的硬盤空間大小。
VBoxManage modifymedium --resize 102400 "H:\VirtualBox VMs\Ubuntu_14.04\Ubuntu_14.04.vdi"
執行示例:
方法二:克隆虛擬硬盤
//創建個100G的虛擬硬盤
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" createhd --filename Ubuntu.vdi --size 102400
//克隆已有虛擬硬盤
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd "H:\VirtualBox VMs\Ubuntu_14.04\Ubuntu_14.04.vdi" Ubuntu.vdi --existing
//有快照時有選則Snapshots\{xxxxx.vdi},即選擇當前使用的快照,一般是文件大小最大的那個。
方法二成功後將Virtualbox中的操作系統的虛擬硬盤替換即可。
增強虛擬磁盤空間容量(VMDK)
vmdk格式的虛擬硬盤使用如下方法:
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd "source.vmdk" "cloned.vdi" --format vdi
//擴展到120G
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd cloned.vdi --resize 1228800
//轉換回原格式
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd cloned.vdi "mac13.vmdk" --format vmdk
擴容Virtualbox中操作系統硬盤大小
Ubuntu
- 通過gparted軟件擴大硬盤容量
使用安裝Ubuntu時的系統鏡像進入"Try Ubuntu"菜單,打開gparted:
先"swap off"關閉交換空間,然後刪除linux-swap,刪除extended。然後選擇需要調整的盤執行"Resize/Move"命令,調整到需要的大小,同樣留下4GB的空間再新建回extended與linux-swap,完成後點對勾應用更改,Partition節下會恢復原來的分區標識,修改完畢再正常進入系統即可。
Mac
首先打開Terminal列出所有硬盤與硬盤分區,明確要擴容的盤符。
$ diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *128.8 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Mac OS 84.0 GB disk0s2
3: Apple_Boot 639.3 MB disk0s4
比如上圖硬盤被擴展後顯示128G大小,原來是將近85G,那我們已被擴容的硬盤就是disk0,要使擴容生效的分區是disk0s2。
接下來依次執行如下命令:
//先執行錯誤修復
diskutil repairDisk disk0,可能有什麼Recovery分區會報錯,不會有大影響。
//擴容,容量是總容量-其它分區,如擴展到127GB
diskutil resizeVolume disk0s2 127GB
修復完成。
如果以後再要縮小磁盤空間的話就要把disk0s2調小,之後使用clonehd
命令將原磁盤內容複製過來。
Windows
打開磁盤管理進行操作即可。