AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 33858
In Process
karon
karon
Asked: 2009-07-01 06:38:00 +0800 CST2009-07-01 06:38:00 +0800 CST 2009-07-01 06:38:00 +0800 CST

是否可以将 VMWare vmdk 映像文件转换为物理硬盘驱动器?

  • 772

是否可以将 VMWare vmdk 映像文件转换为物理硬盘驱动器?我知道 VMWare 6.5 可以直接使用物理硬盘驱动器以获得良好的性能,我可以将现有的 vmdk 文件转换为物理硬盘驱动器以获得更好的性能吗?

vmware-vmdk
  • 6 6 个回答
  • 66288 Views

6 个回答

  • Voted
  1. Alex
    2009-07-01T09:19:18+08:002009-07-01T09:19:18+08:00

    如果你有 qemu-img,你应该能够从只处理图像文件的命令行中完成所有这些工作。

    qemu-img convert source.vmdk -O raw <path>
    dd if=<path> of=/dev/<disk> bs=1G count=<target-gb-size>
    

    这会将 vmdk 输出到物理驱动器的任何原始格式写出。为此最好使用写时复制 FS。确保在第一个 N Gb 内分配的所有源数据都适合 N Gb 大小的目标磁盘。

    • 20
  2. jeb
    2011-08-04T13:57:33+08:002011-08-04T13:57:33+08:00

    有点晚了,但作为参考,我已经成功:

    1. 将 clonezilla 附加到虚拟机
    2. 使用 clonezilla 磁盘启动虚拟机
    3. 将磁盘映像保存到外部 USB 驱动器(也连接到虚拟机)
    4. 使用 clonezilla 将映像还原到物理磁盘
    • 10
  3. Shayan
    2018-07-25T06:29:38+08:002018-07-25T06:29:38+08:00

    您没有提及您使用的是什么操作系统,并且Alex的答案在 Windows 上不起作用,有人在评论中询问如何在 Windows 上执行此操作,所以方法如下:

    您应该使用 Cygwin 才能使用dd和完成任务。

    从这里下载并安装 Cygwin:http ://www.cygwin.com/

    以管理员身份打开 Cygwin 终端并输入:

    cat /proc/partitions
    

    您可以查看所有硬盘及其分区。数字表示分区。

    dd if=/cygdrive/driveletter/path/to/vmdk bs=256k status=progress of=/dev/sdX
    
    • sdX 中的 X 是您要写入的驱动器。但请记住,它与 Windows 的驱动器号不同。不要把它们混在一起!

    • status=progress 将显示 dd 的进度线。

    • bs=256k 是块大小(缓存),您可以将 bs=4M 用于今天的硬盘,但我使用的是 256k,因为我正在使用 USB 拇指驱动器。

    注意:请注意,如果源机器是 Windows 10,dd可能不兼容将 VMDK 转换为 RAW(磁盘),这里报告了一些类似的情况。


    如果您想确保在 Windows 上不可能,请在此处了解有关 qemu-img 的更多信息和命令: https ://cloudbase.it/qemu-img-windows/

    • 3
  4. xbnevan
    2009-07-08T14:43:11+08:002009-07-08T14:43:11+08:00

    您是否尝试过启动 BartPE cd(即 UltimateP2V)并使用 Ghost?一旦它进入硬件,您可能会遇到驱动程序问题,但是这些很容易处理(理论上,哈哈)。

    如果您想创建自己的 P2V(V2V、V2P 等)磁盘,请查看 Mike Laverick 的文章(最好的): http://www.rtfm-ed.co.uk/docs/vmwdocs/whitepaper-ultimateP2V。 pdf

    • 2
  5. PF4Public
    2016-02-13T15:22:15+08:002016-02-13T15:22:15+08:00

    尝试UDPCast

    这个想法是将整个 vmdk 从它的虚拟机流式传输到物理机,然后将其写入物理硬盘。

    程序概述如下。

    由于您有一个 vmdk 文件,因此您可能有一个 VMWare Workstation 供您使用,甚至可以使用此 vmdk 附加到的完整虚拟机。运行附加了这个特定 vmdk 的虚拟机,但不要使用普通引导,而是使用 PartedMagic liveCD 来引导。

    当 liveCD 启动时,导航到主菜单并找到UDPCast Disk Cloning. 它的对话框是不言自明的(见截图) UDPCast 磁盘克隆开始屏幕

    选择此虚拟机作为 后sender,您应该选择要广播的驱动器(使用 Unix 表示法,如 /dev/sda)。

    启动后sender,您也需要启动receiver。因为你有一个物理硬盘,我假设你也有一台完整的电脑,上面连接着这个硬盘。同样的事情:您需要UDPCast Disk Cloning选择receiver这个时间以及适当的物理硬盘来启动 liveCD。

    值得注意的是,您应该做出所有必要的安排,以便在虚拟机和物理硬件之间建立网络连接。如果您的 vmdk 包含私有数据,则应采取必要的预防措施,因为其内容将有效地通过您的网络进行流式传输。另一件事是您的目标硬盘的存储容量不应低于您的 vmdk 的容量。很明显,但也值得注意的是,您的图像在目标硬盘上是一对一的,您需要使用 gparted 等执行适当的操作,以利用新硬盘的更大容量。

    • 2
  6. John Rennie
    2009-07-01T06:41:06+08:002009-07-01T06:41:06+08:00

    将驱动器挂载到 VM 中,然后对其进行快照 (www.drivesnapshot.de)。然后将原始磁盘挂载到 VM 中并将快照还原到磁盘上。这将逐个扇区传输驱动器。在 Linux 中,我认为您可以使用 dd 来做同样的事情。

    这些天来,VMWare 中是否不推荐使用物理磁盘来存储 VM 卷?

    JR

    • 1

相关问题

  • 如何将 VMWare VMDK HDD 文件转换为 HyperV VHD 文件?

  • 从超大虚拟磁盘开始有什么缺点?

  • 如何调整 VMware 硬盘文件的大小?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve