后期资源网|非编软件网|杉宫竹苑|非编插件|高清视频素材|音频素材|非编软件汉化

 找回密码
 立即注册
后期非编系统发布及其详细简介后期非编系统VIP专享下载区影视后期非编模版免费下载区网站注册及其办理VIP业务说明
查看: 719|回复: 0

Vmware虚拟机与VirtualBox虚拟机的硬盘镜像相互转换

[复制链接]
发表于 2012-10-2 13:34:49 | 显示全部楼层 |阅读模式
网络上大部分都在说如何把VMware导入到VirtualBox中,我在最新的版本到看到VirtualBox (3.2.2)已经支持VMware虚拟硬盘格式vmdk,所以新建一个VBox虚拟机,直接注册VMware的虚拟硬盘就可以了。

2 N* M6 }0 p) O$ h5 c/ f* t1 o
其实没有必要把整个虚拟机相互转换,只要把虚拟硬盘镜像转换就可以了,不需要转换,但是要在VMplayer中使用VDI格式的硬盘镜像就得费点劲转换一 个格式了。
+ e; w2 g/ X! C6 r
使用第三种虚拟机来完成这个工作--qemu,
/ `( \" m3 H) j. Q
知道可以使用qemu-img来转换,按照上面的说明安装qemu-kvm,使用过程中发现可以当前的qemu版本已经支持几乎所有的虚拟硬盘格式,参照 下面的命令帮助。
) Q6 T1 Z1 A; G$ n
在Ubuntu下可以很方便的安装

; ?2 J& k4 c# T7 r; o+ e! E& J: U
shily@hh-desktop:~#
sudo apt-get install qemu-kvm/ u8 z8 v3 ^- ]" T6 q
使用如下一个命令就可以轻松完成转换。
/ V, n" S4 \4 H; a
shily@hh-desktop:~#
qemu-img convert  -f vdi -O vmdk Winxp.vdi Winxp.vmdk, \: ~& a& h* |& t& U
直接修改已经建好的虚拟机,(Ubuntu系统在~/vmware/)

  t/ a! n! K" B, q9 y8 ]+ c9 ?5 k
例如我建立的虚拟机叫Win,则修改 ~/vmware/Win/Win.vmx,找到 ide0:0.fileName = "Win.vmdk"

, O, }; r2 v. l4 g9 W
把其中的Win.vmdk修改成你转换生成的文件名即可。
6 k+ |5 A6 G9 `3 X! h
[注]:
6 n- i/ J. C" t# }+ m
1,Winxp.vdi要根据VitrualBox虚拟机的名称修改,在目录~/.VirtualBox/HardDisks下可以找到。
9 J6 [( h+ W# e9 t- K
2,.vmx 是VMware虚拟机的配置文件,是一个文本文件可以直接修改,也可以在程序中更改,删除原来的硬盘,再添加转换后的硬盘。

7 [" E8 G/ O" U. t" f( s1 }* b
======================

$ N7 j  z* d% s/ J/ ?. W
shily@hh-desktop:~$ qemu-img

! W# V* n$ E  i% m: y
qemu-img version 0.12.3, Copyright (c) 2004-2008 Fabrice Bellard

  C: z& i% D# w4 ~& n( n. z+ ]
usage: qemu-img command [command options]
* w2 m, l7 ?7 `9 W: O2 N, F( k
QEMU disk image utility
0 q& P/ e: Q- y. p0 R$ r0 J- t2 a
9 I8 [( O' q  N1 O6 v
Command syntax:

7 \* @; _( S/ K& \/ z1 r
check [-f fmt] filename

+ v4 u" Y  i; u5 V
create [-f fmt] [-o options] filename [size]

, D) ]% {2 R0 V% l2 E
commit [-f fmt] filename

/ U4 R4 [4 V. e9 Z. |3 S/ v
convert [-c] [-f fmt] [-O output_fmt] [-o options] filename [filename2 [...]] output_filename

8 h4 ^( I# k' Z) l; a8 K
info [-f fmt] filename
/ C2 K. F8 b5 s$ R1 n6 x0 W* f4 y
snapshot [-l | -a snapshot | -c snapshot | -d snapshot] filename

) c& z1 r! o; K3 Y
, u* U7 t& D! e4 M" I
Command parameters:
' K5 ~8 w$ r& b( p
'filename' is a disk image filename
& K5 m# \' s6 k% R* F( C3 @! H
'fmt' is the disk image format. It is guessed automatically in most cases

# S- x0 k% O1 F2 x! q
'size' is the disk image size in bytes. Optional suffixes

' g! c+ c8 H+ ~* J0 H
'k' or 'K' (kilobyte, 1024), 'M' (megabyte, 1024k), 'G' (gigabyte, 1024M)

5 }1 @  N# W% j2 S9 i
and T (terabyte, 1024G) are supported. 'b' is ignored.

7 Z2 Y- R, x- k7 P/ `: F
'output_filename' is the destination disk image filename

. y% e# h  }. o- y2 H- k
'output_fmt' is the destination format

! v- K; e# s3 r5 G: A, d
'options' is a comma separated list of format specific options in a

) i# y' d# x1 r. T
name=value format. Use -o ? for an overview of the options supported by the
2 l  j/ ?6 [; a6 i2 z/ v  w( u
used format
: A. G; X! P; p
'-c' indicates that target image must be compressed (qcow format only)

- T9 W7 K7 a; ?/ a
'-h' with or without a command shows this help and lists the supported formats
0 |# y  o" S3 K3 R) n/ n
+ b) H- Z4 z  }# U. m2 o
Parameters to snapshot subcommand:
. x" _% t; v% ^' h# k, G
'snapshot' is the name of the snapshot to create, apply or delete
9 y8 X- w' M4 h4 u: A: x+ @9 F
'-a' applies a snapshot (revert disk to saved state)

* e1 L  U0 ]5 L2 v; S- q
'-c' creates a snapshot
( W# z; V; s4 e/ H
'-d' deletes a snapshot
9 j& `: q9 x2 N" v& \) l" C4 E8 `
'-l' lists all snapshots in the given image

9 ^$ Z, \' s! l2 S+ V
. ~) E+ e: B$ u9 I# X0 V
Supported formats: cow qcow vdi vmdk cloop dmg bochs vpc vvfat qcow2 parallels nbd host_cdrom host_floppy host_device raw tftp ftps ftp https http

5 T2 s$ O2 E( X" U" l5 t' t) R# z, g. r, r  I7 N% _! W1 q
======================

' p, J4 W% U: U: M9 @6 D
参考:
( e/ q% H. Z! {, z* a  \- u/ I
======================================
( h3 C6 ]* H# t/ O2 m/ x/ Y4 U1 J: U
2010-06-06 更新
) |- c* ]2 E4 L6 i( [
警告:
安装qemu-kvm可能导致virtualbox无法启动,在我的机器上出现了如下提示:

$ p' m- m3 l* ^
4 ?( [9 w% T" w7 I4 N3 I
Failed to open a session for the virtual machine WinXP.
VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_VMX_IN_VMX_ROOT_MODE).
Details:
6 f# Q- E# H% W$ G/ s
Result Code:
8 N+ c  D$ S! p& B
NS_ERROR_FAILURE (0x80004005)
. g9 @4 B$ [' x$ O7 n# f6 X
Component:

0 `6 c! N( x& l- x5 F
Console

' f; y4 U- S! f% ~/ {  e. r1 U
Interface:
& d; X, X1 {( Q- q! {
IConsole {6375231a-c17c-464b-92cb-ae9e128d71c3}
( ^( P% L5 u# s7 y; @! V
5 w. g, R$ L5 j" P- k3 z
可能导致
的原因是我的系统环境比较复杂:安装在USB硬盘上,经常在T60p和Dell的740上工作,他们的 CPU一个是Intel、另外一个是AMD,比较郁闷。在网上找到一个解决方案。
7 B7 {: e$ H( Z( g
shily@hh-desktop:~$
sudo modprobe -r kvm_intel
#因为我当前的CPU是Intel,你也可以直接使用sudo modprobe -r kvm来删除kvm模块,无论你使用什么样的CPU。
4 V- g7 b2 M; E5 f& ]& g8 S
然后打开VirtualBox就可以了,但是你需要在每次重启开机后执行这个命令,如果你需要启动Vbox的话。
5 f- e3 s2 S. X) g2 ~8 }0 F
. I, P$ R6 ~, X( h9 r! X
参照:
' S4 [: O+ z) Q/ x8 O6 K3 g+ }  ?

/ {' m: m' M6 ]9 k6 G. ?' y. {
很郁闷的是,我在开启虚拟机后发现USB设备已经可以在虚拟机中正常使用了,我并不清楚什么原因导致可以使用。
  F* t. \+ x, h0 h* Z! D
==========================

( ]! J5 e  Y# h& T0 r0 m最新更新:0 w: |) `' ?& _% c; b% i
学习了些新东西,找到了原因。
& t( H" P6 c4 a" H, S
发现我系统中的 /etc/udev/rules.d/10-vboxdrv.rules 文件不知道什么原因消失了。

0 O# f# Q& [2 W1 r
重新建立一个,写入以下内容:
. ~- W! g, U: C6 A7 h

9 k& [6 Y, |* o+ @* e# v
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600"

- L9 l& i* L( D
SUBSYSTEM=="usb_device", GROUP="vboxusers", MODE="0664"
8 k8 Q: D+ ]/ m$ N0 L% V; g" w6 q
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="vboxusers", MODE="0664"
. Z8 Q! B$ }. n- b2 {3 @
' N3 \" Z) Z5 w- W0 D# N& x
重新启动虚拟机,就可以使用USB了。
后期资源网,打造没有广告、免除隐藏回复的全开放式影视技术交流平台。 你的所求就是我们服务的宗旨!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|后期资源网

GMT+8, 2024-5-25 11:55 , Processed in 0.114037 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表