本来一直在寻求vb、vm的硬盘文件的转换方法,突然发现vb本来就可以使用vm的磁盘文件了(我的vb版本是4.1.12),有点汗颜呀,居然一直不知道,郁闷中。。。# b; @* A9 k- T9 J" H
& C, A9 ]; }' `6 L
当然既然已经查找了,总是有点收获的,具体如下:
! ~6 e; H6 f# G! e4 X% q. ^8 o1、vmware磁盘文件==》virtualbox磁盘文件% U! s$ |9 s" U4 |) o. L
具体使用的是virtualbox自带的工具:VBoxManage,用法具体如下:' r! O6 c3 O$ K, j
VBoxManage clonehd | # |4 Y* j1 j& i0 S9 \. _
[--format VDI|VMDK|VHD|RAW|]
- C B! g: ~% \7 F* j! Z: ~; }[--variant Standard,Fixed,Split2G,Stream,ESX]/ }. L, J3 R" ]
[--type normal|writethrough|immutable]0 }# _2 Y( F3 O. V8 x
[--remember] [--existing]
: h7 P! o; P& e: @7 [ r7 t/ W例子:% _; r; a( s& e2 _2 F
vboxmanage clonehd "F:\win7\win7.vmdk" "F:\vb\win7.vdi" -format VDI) s$ o0 E, s3 n9 { M6 A
就这么简单,当然转换的时候有点慢,而且支持vmdk的分文件模式+ r" [2 @6 |" g4 G+ B
a; D2 Q5 D% c ~: H9 R4 p
当然如果需要Qemu转VMDK为RAW格式:(下载地址:http://www.onlinedown.net/soft/46950.htm)
) Q3 C# v B, \3 u6 {: Jqemu-img convert -f vmdk "F:\win7\win7.vmdk" -O raw "F:\VM\VirtualBox\Temp.img"' L' x2 {; x3 k' K" y6 K
RAW转VDI:
; S: U9 c+ a, Y! H1 D+ ^0 B- P ]vboxmanage convertfromraw "F:\VM\VirtualBox\Temp.img" "F:\VM\VirtualBox\win7.vdi" -format VDI( m6 I' G4 R, E+ l- ?; [$ l% _
或者直接:
, [4 [! X9 N# a- BVBoxManage clonehd source.vmdk target.vdi --format VDI9 w4 G" _& G3 D1 F8 N7 h! x# O
9 l9 b, Q+ l8 L( a( y
2、virtualbox磁盘文件==》vmware磁盘文件" q4 u* x2 A8 U/ r& c" L
需要两次转换哦,首先:
) R7 j: g+ W' K" B, {4 Zvboxmanage clonehd /path1/xxx.vdi /path2/xxx.vmdk –format VMDK
d1 w* H& S5 j& r然后:
1 v% h5 F( l0 m4 l8 B' c+ B X' ]vmware-vdiskmanager -r /path2/xxx.vmdk -t X /path2/xxx.vmdk1 Z% x9 S, Q: ?, H: V% P1 v
其中的X可以用
" w2 ?3 C. N& w6 [0 : 做成單一檔案(不預先配置)
* g% p: x3 I' E6 G$ T* N, I$ N1 : 切成2GB為一個檔案5 W- T+ k5 l7 H0 I# O5 d
2 : 預先配置檔案大小 O# p# M+ Z, b- G! P4 k4 J( S9 z* e
3 : 預先配置以2GB為單位的檔案群" U# ^6 L0 r; }/ h2 B4 |
4 : 預先配置成ESX的格式0 f$ B8 i' m, i
來代替,這裡我們可以直接使用”0″
D, I( `$ V; s+ C" R! `% o! ` |