VirtualBox是常用的虚拟机管理软件,和VMware一样,用的很多。在使用过程中,有的时候需要对虚拟机进行迁移。比如我们原来的服务器,使用的win10操作系统,上面利用VirtualBox安装了多个虚机作为服务器,tomcat服务器,virtuoso数据库服务器,mysql服务器等,由于win10物理机出现了问题,需要将虚机迁出,所以尝试着将虚机迁移到另一台win2008的系统中。

VirtualBox保存虚机数据的是vdi文件,简单来说就是拷贝vdi文件,然后在新的物理机上,安装VirtualBox打开这个vdi文件。具体步骤如下。

1 获取vdi文件

每个虚机都对应一个或多个vdi文件,在VirtualBox中的全局设置,可以查看虚机vdi文件的存放目录,每个虚机的数据都保存在以虚机名称为文件夹里面。在这个虚机根目录可以看到vdi文件,这个vdi文件可以看作虚机的基础数据。如果虚拟保存了快照(备份),还有一个snapshot目录,里面保存的是虚机快照。快照的vdi可以看作是虚机的状态信息,基础数据和状态信息加在一起是虚机的所有数据,一般我们可以关闭虚机,然后再删除快照,这样就剩下根目录的vdi,也就是虚机的vdi数据,这个vdi就是我们要的vdi。

2 克隆vdi数据

如果直接拷贝vdi数据,在新的VirtualBox中不能打开,因为每个vdi文件都包含了一个uuid的数据,如果直接拷贝,uuid在新的VirtualBox中是不能用的,所以会打开失败,我们需要给在原来vdi的基础上,生成新的vdi数据,包含新的uuid,可以在VirtualBox中打开。这个包含新uuid的vdi数据可以通过VirtualBox命令生成。

此处用了克隆的方法,也可以直接拷贝过去,然后再通过VirtualBox命令处理。克隆的方法,进入cmd命令行,然后进入VirtualBox的安装目录,比如VitualBox的安装目录是C:\Program Files\Oracle\VirtualBox,原有vdi文件在d盘,生成新的vdi放到e盘。命令为C:\Program Files\Oracle\VirtualBox>vboxmanage.exe clonehd "d:\xxx.vdi" "e:\xxx.vdi"。回车之后出现0%...,需要点时间才能生成vdi文件,10多G的数据可能要10来分钟时间。执行完成后会出现0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%类似的信息。这样克隆vdi数据文件的工作完成了。

3 利用vdi数据创建虚机

在新的VirtualBox中创建新的虚机,给虚机起个名字,选择操作系统。点击下一步,使用已有vdi文件创建虚机,选择刚生成的vdi文件创建。

这样虚机的迁移任务就完成了。

VirtualBox虚拟机克隆迁移步骤的更多相关文章

  1. Virtualbox虚拟机克隆

    Vmware Workstation可以提供虚拟机的克隆,可以安装好虚拟机之后可以非常方便的复制一个虚拟机,这样在搭建多台虚拟机的环境下非常方便,无需一台台的安装系统,但是Virtualbox在图形界 ...

  2. VirtualBox虚拟机克隆方法

    1.定位到Vritualbox的安装目录,不能用全路径的方式直接执行该命令行 2.执行Vboxmanage.exe clonevdi "d:\linux\source.vdi" & ...

  3. 实现将VirtualBox 虚拟机转换为KVM虚拟机的步骤

    原来在桌面上一直使用virtualbox虚拟机管理程序(VMM)构建虚拟机安装不同的操作系统,现在 研究linux下的KVM,能否将已经建立的virtualBox虚拟客户机(guest)转换为KVM虚 ...

  4. Windows环境下在Oracle VM VirtualBOX下克隆虚拟机镜像(克隆和导入)

    Windows环境下在Oracle VM VirtualBOX下克隆虚拟机镜像: 注:直接复制一个.vdi 虚拟硬盘再挂上去就可以,但Virtualbox居然提示UUID重复,无法使用. 则,可以通过 ...

  5. CentOS 6 命令行下安装 VirtualBox 虚拟机步骤

    CentOS 6 命令行下安装 VirtualBox 虚拟机步骤 1. 准备工作 安装内核更新 yum install kernel-develyum update kernel*如果内核有更新,则需 ...

  6. virtualbox虚拟机迁移出现"connot find device eth0"错误

    我在自己的机器上面配置virtualbox虚拟机完毕以后,移植到另外一台机器上面,登陆页面总是在检查network,并且最后网络加载失败,不论我是用桥接还是NAT方式连接.登陆系统以后,我尝试连接网络 ...

  7. vsphere 虚拟机的迁移,冷迁移,vmotion(热迁移)

    备注:(理论部分参考王春海老师的课程) 一.概述 1.vsphere数据中心当处于某种目的进行维护时,需要将某台主机上运行或关闭的虚拟机,迁移到其他主机上,这个时候就需要使用迁移 2.可以使用冷迁移或 ...

  8. VirtualBox虚拟机安装Mac OS 10.12

    注:本文作者  (QQ:85805214) 本博主只是转载发布而已. VMware 安装Mac OS 方法 由于Virtual Box拷贝文件比较麻烦,有时候经常出现拷贝失败的情况,故使用VMware ...

  9. 基于本地存储的kvm虚拟机在线迁移

    基于本地存储的kvm虚拟机在线迁移 kvm虚拟机迁移分为4种(1)热迁移基于共享存储(2)热迁移基于本地存储(3)冷迁移基于共享存储(4)冷迁移基于本地存储 这里介绍的是基于本地存储的热迁移 动态块迁 ...

随机推荐

  1. mac环境下jdk配置

    查看mac下jdk路径 当在Mac下安装完Java运行环境,而又没有添加JAVA_HOME变量的时候,我们如何得到JAVA_HOME变量的路径呢?直接在home目录下执行命令:/usr/libexec ...

  2. 在Eclipse中使用git把项目导入到git中--转载

    [转载出处注明:http://www.zhangxiaofu.cn/java/commonTools/2015/0607/764.html] 一.原有项目:  项目名为TestGit 二.在osc@g ...

  3. 从Facebook数据泄露事件看大数据时代的个人信息安全问题

    进入21世纪后,互联网开始大规模普及,线上业务和线上服务也开始逐渐走入人们的生活.尤其在智能手机和移动互联网诞生以后,人们对网络的依赖更是与日俱增.然而,伴随而来的则是涉及个人隐私的信息安全问题.个人 ...

  4. HCNA(华为)_DHCP篇

    在大型的企业网络中,会有大量的主机或设备需要获取IP地址等网络参数.如果采用手工配置,工作量大 且不好管理,如果有用户擅自修改网络参数,还有可能会造成IP地址冲突等问题.使用动态主机配置协DHCP 来 ...

  5. mybatis 之数据库 include refid ="base_column_list"

    mybatis 之数据库 include refid ="base_column_list" 对于刚学习使用SSM框架的新手来说,mybatis中的数据库语句有点不一样,下面便是对 ...

  6. angular.module()

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. Dapper 封装oracle底层访问数据库

    如下代码,修改成只支持oracle: using System; using System.Collections.Generic; using System.Data; using System.L ...

  8. Python函数式编程之闭包

    -------------------------函数式编程之*******闭包------------------------ Note: 一:简介 函数式编程不是程序必须要的,但是对于简化程序有很 ...

  9. unittest中常用的几个断言

    a.相等 (a==b)内容一样,类型一致 from init import * import unittest class Baidu_Title(Info): def test_baidu_titl ...

  10. npm修改淘宝原

    //修改之前查看一下npm config get registry https://registry.npmjs.org/ //设置源npm config set registry https://r ...