目前,主要有两种可以将一台物理计算机转成虚拟机的工具/产品。也许你还能找到其他应用程序来进行转换,以下两个产品是由微软设计的:
● Microsoft System Center Virtual Machine Manager 2012 (P2V)
● Disk2VHD工具
Microsoft System Center Virtual Machine Manager 2012
Microsoft System Center Virtual Machine Manager(简称SCVMM)不仅提供将物理计算机转换成虚拟机的内建基本选项,还会在P2V向导中提供高级配置选项。SCVMM是管理Microsoft Hyper-V,VMware和Citrix Xen Servers等虚拟化产品的强有力的工具。本文中我们将着重介绍Disk2VHD工具,所以SCVMM的P2V过程不在本文范畴之内。
注意:Disk2VHD工具不是SCVMM的替代品,但绝对是执行简单转换的便利工具。
Disk2VHD工具
虽然将物理计算机转换成虚拟机有助于降低整体硬件成本,但是用于虚拟机转换的企业级产品可能非常贵。这就是Disk2VHD工具出手的时候了。如果你需要进行虚拟机转换,而又不希望为SCVMM付使用费,那么你可以使用Disk2VHD工具。
Disk2VHD是一个用于将物理机器转换成虚拟机的单个EXE可执行文件。顾名思义,Disk2VHD就是将逻辑卷转换成VHD文件。之后,这些VHD文件就可以在Hyper-V上用来创建虚拟机,或是在现有虚拟机上将VHD文件作为第二个驱动器添加。
Disk2VHD工具有两种操作方式:图形界面和命令行。命令行模式一般在无人值守的脚本式转换中更有用。
本文中我们讨论以下几点内容:
● Disk2VHD工具 —— 使用图形界面模式
● Disk2VHD工具 —— 使用命令行模式
● 复制了什么数据?
● 转换好的VHD文件要用在哪儿?
● Disk2VHD小结
Disk2VHD工具 —— 使用图形界面模式
Disk2VHD.exe可以直接在微软下载:http://technet.microsoft.com/en-us/sysinternals/ee656415
在使用Disk2VHD工具进行转换之前,非常重要的一点就是,要关闭计算机上所有正在运行的应用程序。
步骤:
1. 当你双击Disk2VHD.exe时,它会扫描当前计算机的所有物理驱动器,显示出可以进行转换操作的可用驱动器。如下图所示:
注意:Disk2VHD.exe忽略了连接到物理计算机的网络驱动器,因为它不能列入可转换的驱动器的范围内。
上图还显示了要为你所选择的磁盘创建的VHD文件所需的目标位置的空余磁盘空间。
注意:系统保留分区,如上图所示,是物理计算机的引导分区。只有在你需要从VHD引导启动时,才需要把这个分区加进去。换句话说,如果你的虚拟机要从这个VHD文件启动,你就要加入系统保留分区。
2. 上图中,"VHD File Name"对话框处要填入VHD文件名和位置,然后单击"Create"按钮,开始进行转换。
3. 在点击"Create"按钮时,该工具会用到操作系统中的VSS组件,来创建卷的快照,如下图所示:
在快照过程完成之后,快照的数据会被复制到VHD文件中。
Disk2VHD工具 —— 使用命令行模式
Disk2VHD.exe也可以使用命令行的方式操作。例如,下面的这个Disk2VHD命令就可以把一个卷转换成VHD文件:
Disk2VHD.exe <源驱动器卷标>
要把你的C盘转成VHD文件,就使用下面的命令:
Disk2VHD.exe C: C:MyVHDsVM1.VHD
提示:在上面的命令中,"C:"处可以使用"*",这样Disk2VHD就能找到所有驱动器。
提示:默认情况下,当你在物理计算机上第一次运行Disk2VHD.exe时,会提示你接受EULA。你可以使用“-accepteula”来回避,命令如下:
Disk2VHD.exe C: C:MyVHDsVM1.VHD -accepteula
注意:你选择的所有卷都会被打包成一个VHD文件,除非你使用命令行选项标明每个驱动器卷标的VHD文件名。
复制了什么数据?
转换过程中,逻辑卷中的所有数据都会被复制到VHD文件中。Disk2VHD工具还会复制系统相关数据,如计算机名称,IP地址,MAC地址,安全标识符(SID),磁盘签名,等等。在网络中使用转换过的VHD要注意(特别是操作系统VHD文件)。如果物理计算机仍连着网络,而你在Hyper-V上的一个虚拟机上使用VHD文件,你可能会遇到名字冲突的错误信息。
转换好的VHD文件要用在哪儿?
你可以将VHD文件用于以下地方:
● 你可以将转换好的VHD文件作为新虚拟机的虚拟磁盘,用来创建一个新的虚拟机。
● 你可以将转换好的VHD加入到现有的虚拟机中。
● 你还可以使用计算机管理或DiskPart.exe工具载入VHD文件,浏览其内容。
Disk2VHD总结
● Disk2VHD.exe使用卷影拷贝服务(VSS)来进行转换。只有在计算机中的VSS服务运行时才能进行。
● 转换过程中无需停机。
● 只有连接在计算机上的物理驱动器才能进行转换。网络驱动器不行。
● 如果你在开始转换前选择了“系统保留”分区,就可以让VHD变成可引导启动。
● Disk2VHD.exe生成的VHD文件可以在Hyper-V中使用,用来创建一个新的虚拟机,还可以将VHD加入现有的虚拟机。
● 由于转换过程中,Disk2VHD需要使用卷影拷贝服务(VSS),因此你可以讲本地路径作为VHD文件目标位置。
● Disk2VHD会对你选择的磁盘生成VSS快照,然后开始进行转换。这就意味着,你在转换过程中保存的任何新的数据都不会进入VHD文件中。
● 这个工具只能进行简单的转换,不能把它视为SCVMM的替代工具。
● 有两个原因会使转换过程延长:
1. 你所选择的物理磁盘/分区的大小
2. 存储转换好的VHD文件的目标位置和源位置一样。
因为Disk2VHD.exe会有I/O操作(读取逻辑、源卷的数据,把VHD文件写入同一磁盘),所以它会更慢。
建议VHD文件的路径不要和你选的卷的位置一样。
● 由于Windows的“操作系统启动加载程序”(WinLoad.exe)会通过一种叫“磁盘签名”的东西来识别加载磁盘,所以千万不要把VHD添加到同一个计算机上,因为生成的VHD文件会有同样的磁盘签名。这会导致系统过程中止,或是WinLoad.exe改变启动顺序。
● 如果物理计算机上有任何应用程序正在使用磁盘或文件,Disk2VHD.exe就不会完成转换。备份程序经常出现这种情况,因此强烈建议关闭所有备份程序。