使用VirtualBox时可能会遇到这样的问题:原本觉得给虚拟机分配的磁盘容量已经足够了,但是用着用着,发现空间越来越不够用,不得不扩展虚拟机的磁盘容量。下面介绍一种扩展虚拟机磁盘容量的方法。
1、在cmd命令行下进入VirtualBox的安装目录,使用“VBoxManage list hdds”命令,找到需要修改磁盘容量的虚拟机的img路径或UUID:
C:\Program Files\Oracle\VirtualBox>VBoxManage list hdds
UUID: 4a43ca85-2d4b-4fca-919f-3bc0c1f6b307
Parent UUID: base
Format: VDI
Location: D:\VirtualBox VMs\Ubuntu 14.04\Ubuntu 14.04.vdi
State: created
Type: normal
Usage: Ubuntu(UUID: e9245daf-24a2-4ef1-9b0e-b0419d3cc739)
2、修改虚拟机的磁盘空间,扩容到128GB
C:\Program Files\Oracle\VirtualBox>VBoxManage modifyhd "D:\VirtualBox VMs\Ubuntu 14.04\Ubuntu 14.04.vdi" --resize 128000
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
注意:
a) 如果路径中有空格存在,需要使用双引号把路径括起来;
b) 以上过程是在windows控制台下进行的;
c) 以上过程需要在VirtualBox关闭的情况下进行。
3、扩展Ubuntu根分区磁盘容量
Ø 使用工具GParted,点击http://gparted.sourceforge.net/下载ISO镜像;
Ø 在VirtualBox光驱中加载下载的gparted-live-0.16.1-1-amd64.iso镜像,设置为第一顺序启动;
Ø 启动虚拟机进入GParted,双击桌面“GParted”即可看到有显示为未分配状态的磁盘空间;
Ø 对硬盘进行分区:我们要扩展的是Ubuntu根分区的大小,所以将sda1调大即可。但是swap分区在sda1后面,sda1是调不动的。我们可以先把 swap删了,把sda1调大,给swap保留约2GB的空间,然后再把这个空间设定成swap分区;
Ø 关闭GParted,在VirtualBox设置中将gparted-live-0.16.1-1-amd64.iso镜像卸载。
4、重新启动Ubuntu, 磁盘容量扩展成功。
查看卷标: sudo blkid
修改卷标: sudo e2label /dev/sdb1 labelname
虚拟磁盘的克隆/复制: VBoxManage clonehd "...\disk_old.vdi" "...\disk_new.vdi"
虚拟磁盘的迁移/更名: VBoxManage internalcommands sethduuid "...\disk_new.vdi"
注意:
容量只能增加,不能减少!
虚拟磁盘文件移动后或不可用,须使用克隆or迁移方式。