VirtualBox 物理磁盘导入批处理脚本





5.00/5 (1投票)
一个Windows批处理脚本,用于将物理磁盘导入虚拟机
引言
在Windows系统中,将物理磁盘导入虚拟机并不直观。因此,我进行了一些研究,很快找到了所需的方法,但由于我需要经常使用它,所以我编写了一个批处理脚本来完成这项工作。该脚本将具有以下功能:
- 检查管理员权限
- 从注册表中查找
VirtualBox
的安装路径 - 列出所有已安装的物理磁盘驱动器
- 询问要导入的磁盘编号
- 检查并最终询问是否要覆盖目标文件
背景
我目前正在检查我公司许多旧硬盘驱动器。我使用USB-to-IDE电缆连接它们,并且由于安装了实时磁盘加密,我使用 VirtualBox
启动这些磁盘。现在的问题是,每次更换磁盘时,都必须为该磁盘创建一个新的导入链接文件,以便设置正确的参数。为了使操作更方便快捷,我创建了这个脚本。
手动方法
通常,要将物理磁盘导入Virtual Box,您需要执行以下操作。首先,您需要确定物理磁盘映射到的编号。您可以通过运行'diskmgmt.msc'并在那里找到您的磁盘来完成此操作,它看起来会像这样
然后,您以管理员权限启动命令提示符,导航到 VirtualBox
的安装目录(即 VBoxManage.exe 所在的位置),并运行以下命令
VBoxManage internalcommands createrawvmdk -filename C:\sd.vmdk -rawdisk \\.\PhysicalDrive#
其中 #
是您找到的磁盘编号。如果成功,这将创建一个名为 'C:\sd.vmdk' 的小文件,您可以在 VirtualBox
中使用该文件。
使用脚本
基本上,该脚本是一个向导 - 启动它并按照说明操作即可。
当脚本启动时,它会检查是否具有管理员权限。如果没有,命令行文本将变为红色,将创建一个VBS脚本,该脚本将以管理员权限再次启动该脚本(如果Windows中已配置提示),然后退出第一个实例。
之后(假设已授予管理员权限),它将读取注册表以查找 VirtualBox
的安装路径。如果找不到,将显示错误消息。
然后,它将列出所有已安装的物理驱动器,并提示您输入要从中创建链接文件的磁盘编号 - 或按[C]取消。
脚本始终选择与脚本位于同一目录中的文件 'PhysicalDisk#.vmdk' 作为目标文件。如果目标文件存在,系统会询问您是否要覆盖它。
如果一切顺利(脚本如果文件已创建),文本将变为绿色 - 如果不顺利,则变为红色 - 并打印相应的消息。
使用链接文件
启动 VirtualBox
后,进入虚拟机的设置,然后切换到“存储”部分。
在控制器上单击“添加硬盘”,单击“选择现有磁盘”,导航到创建的文件并选择它。
如果弹出此消息,您很可能没有以管理员权限启动 VirtualBox
。
要从VirtualBox中删除虚拟磁盘,请在 VirtualBox
的“文件”菜单中启动“虚拟媒体管理器”,选择磁盘,然后单击“释放” - 然后您可以将其删除。