virtualbox 中原来系统的磁盘文件vdi复制及移动:
1 将该文件拷贝到D:\VirtualBox_VMs\centos6.7\centos6.7.vdi目录下
2 在virtualbox 的安装目录下找到 VBoxManage.exe 程序。
并用cmd进入VBoxManage命令行,执行 D:\Program Files\Oracle\VirtualBox> VBoxManage internalcommands sethduuid D:\VirtualBox_VMs\centos6.7\centos6.7.vdi,
提示 UUID changed to: e91f14d7-fa5c-46f4-a389-35235fd75XXX (一串16进制码)
3 重新创建一个新的虚拟机,然后按照原来的顺序将磁盘挂载
如果要修改迁移后的虚拟机系统盘分区的大小,请继续,否则可以直接结束,开始使用新的虚拟机
4 要修改迁移后的虚拟机系统盘分区的大小,先进入命令行,以Windows系统为例
(特别注意空格和中文)
.启动CMD命令行,进入VirtualBox的安装目录,修改迁移后的磁盘的总容量空间
如 运行:cmd
C:\Users\Administrator>D:
D:>cd “\Program Files\Oracle\VirtualBox”
D:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd YOUR_HARD_DISK.vdi --resize SIZE_IN_MB
D:\Program Files\Oracle\VirtualBox>
其中参数 YOUR_HARD_DISK.vdi 是您要修改的 VirtualBox 虚拟硬盘镜像文件。而参数 SIZE_IN_MB 是指修改后的硬盘容量,单位是MB。
. 将调整磁盘空间为40G,具体要改变的大小自己设定
比如下面这行命令将会把名为"ubuntu.vdi "的 VirtualBox 硬盘容量修改为40*1024MB。
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd “E:\dds\VirtualBox VMs\linux\linux-bak.vdi” --resize 40960
0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%.
D:\Program Files\VirtualBox>
注意:如果路径中包含空格或中文,整个路径要用英文状态引号"括起来,在WIN7的CMD下可以输入部分路径然后按TAB键补全,CMD监测到路径中有空格会自动为路径名加引号的,如:
D:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd “F:\VirtualBox\my ubuntu.vdi”–resize 15360
D:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd “F:\虚拟机\my ubuntu.vdi”–resize 15360
另,VBOX好像对MS的文件系统,比如NTFS的可能无法更改大小,一网友测试没成功,相对来说对Linux系的支持更好一些
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd “E:\dds\VirtualBox VMs\linux-bak\linux-bak.vdi” --resize 20480
0%…10%…20%…30%…40%…50%…60%…70%…80%…90%…100%
C:\Program Files\Oracle\VirtualBox>cd E:\dds\VirtualBox VMs
5 将迁移后的磁盘先挂载到原来的虚拟机下,作为一个新的磁盘,启动旧的虚拟机
6 启动原有虚拟机,查看磁盘情况。
[root@aimin ~]#sudo fdisk -l
可以看到新挂载的磁盘空间(/dev/sdd)已经扩展40G
7 将新挂载磁盘的新开辟空间划分分区
fdisk /dev/sdd —用root用户操作
n {new partition}
p {primary partition}
4 {partition number}
[这时会提示修改大小,选择默认直接回车即可]
最后写w,开始执行修改
8 将原来根分区/dev/sdd2的内容全部拷贝到/dev/sdd4
dd if=/dev/sdd2 of=/dev/sdd4
9 格式化原来的根分区/dev/sdd2
mkfs.ext4 /dev/sdd2
10 修改 /dev/sdd4的分区表
e2fsck -f /dev/xvda3 #检查分区信息,这部检查必须要做。
resize2fs /dev/xvda3 #调整分区大小,这个过程根据磁盘大小会需要点时间。
注意:修改分区表已经扩容完成了,达到我们的目的了,不要去用mkfs去格式化,否则你的数据会丢失的,除非你想格式化。
11 将/dev/sdd4 使用mount挂载,确认磁盘空间已经修改
12 修改 /dev/sdd4磁盘下的etc/fstab 文件,注意是否UUID 是否正确,此时可以将/dev/sdd2的挂载点写入,如:
UUID=cfa756cc-e8c1-4768-a956-412feb73e0f0 /opt/toolchains ext4 rw,noatime,errors=remount-ro 0 2 # device during installation: /dev/sda2
13 关闭原有的虚拟机,将新磁盘不再挂载原有虚拟机上,新的虚拟机上启动运行。