我有一个装有操作系统的 USB。现在我想创建 VMDK 文件以在 VirtualBox 中使用它们。
我读了很多文章,但不知道如何使用它们。在一篇文章中,我发现了以下方法:
C:\Program Files\Oracle\VirtualBox > VBoxManage internalcommands createrawvmdk -filename D:\usb.vmdk -rawdisk \\.\physicalDrive<Disk 1> -register
它不起作用。我尝试不注册,但什么也没发生。如果我打开 diskmsgmt.msc,它们会显示驱动器的名称是Disk 1 Removable
我想知道我该怎么做。问题是当我运行命令时系统告诉我找不到文件。
我尝试检查 USB。它工作正常。我认为问题可能有两个原因:
- 磁盘名称中有空格,因此我认为它无法工作。
- 我在命令中遗漏了一些东西。
有人能解释一下我需要使用什么命令才能使它对我起作用吗?
(我尝试使用 VirtualBox 而不是 VMware 的命令)
答案1
只需在 Linux 上打开终端或在 Windows 上打开命令行工具(Win+R cmd)并将目录更改为您的 VirtualBox 文件夹。
cd "C:\Program Files\Oracle\VirtualBox"
然后我们运行 VBoxManage 命令并使用以下选项将 USB 驱动器链接到 vmdk 文件(虚拟机磁盘):
VBoxManage internalcommands createrawvmdk -filename usb.vmdk -rawdisk "path_to_usb"
例如在 Linux 上,如果我想在 /home/thomas/.VirtualBox/usb.vmdk 中保存一个链接到 /dev/sdb 中的 USB 的虚拟机磁盘,我输入以下行:
VBoxManage internalcommands createrawvmdk -filename /home/thomas/.VirtualBox/usb.vmdk -rawdisk /dev/sdb
在 Windows 上,如果我想将虚拟机磁盘保存在 C:\Users\Thomas.VirtualBox\usb.vmdk 中,并将其链接到磁盘 1 中的 USB(根据之前的磁盘管理),我输入以下行:
VBoxManage internalcommands createrawvmdk -filename C:\Users\Thomas\usb.vmdk -rawdisk \\.\PhysicalDrive1
将中的 1 替换\\.\PhysicalDrive1
为您的 USB 驱动器的设备编号(例如\\.\PhysicalDrive2
)。
如果任何路径包含空格,请将其放在引号(“)中以使其起作用。例如:
VBoxManage internalcommands createrawvmdk -filename "C:\Documents and Settings\Carletdesiles\.VirtualBox\usb.vmdk" -rawdisk \\.\PhysicalDrive1
就是这样,您已经完成了一个非常小(~1KB)的虚拟机磁盘并链接到您的 USB 驱动器。
您只需将此硬盘导入 VirtualBox 并将其用作新系统的主硬盘(用于启动)。
答案2
在 VirtualBox 的后续版本中,内部命令createrawvmdk
已被弃用,但您可以使用createmedium
如下新命令:
VBoxManage createmedium --format=VMDK --variant=RawDisk --filename=raw-disk2.vmdk --property RawDrive=/dev/disk2
更改/dev/disk2
您的磁盘位置(例如,\\.\PhysicalDrive1
如果您在 Windows 上)。
您还需要运行sudo
或使用具有管理员权限的控制台。