如何向正在运行的 VirtualBox 客户机添加新的 SATA 磁盘?

如何向正在运行的 VirtualBox 客户机添加新的 SATA 磁盘?

我安装了 Centos7,启动后想在线添加新的 SATA 磁盘,但“存储”部分是灰色的。其他 VirtualBox 版本支持此功能,还是完全无法为正在运行的虚拟机添加新的本地磁盘?

我不想仅仅因为添加新磁盘而关闭/打开电源。

答案1

实际上,你可以使用以下方式将存储热添加到正在运行的 VirtualBox VM 中:VBoxManage 存储附加

VBoxManage storageattach <VM Name> \
  --storagectl <Controller Name> \
  --port <Port Number> \
  --device <Device Number> \
  --type hdd \
  --medium <Path to Disk Image>

(请注意,在 Windows 上您可能必须删除反斜杠和换行符。)

如果您有 SATA 控制器,则设备号始终为 0,并且整个参数是可选的。

如果虚拟机名称中有空格,请用引号括起来。存储控制器名称和映像路径也是如此。

有一些重要的先决条件(请查看VBoxManage showvminfo):

  • 必须存在支持热插拔的控制器(如 SATA、SCSI、SAS)
  • 存储控制器必须有未使用的端口,否则你必须更换磁盘
    • 默认情况下,VirtualBox GUI 仅分配所需的端口数,因此最有可能的是空闲端口不是可用的
  • VM 中运行的操作系统必须支持热插拔磁盘

IIRC GUI 不提供对以上任何内容的支持。

答案2

受到 Daniel 帖子的启发,我能够通过 GUI 向 VirtualBox 5.2.18(主机操作系统 Linux Mint 19)中正在运行的 CentOS 6 VM 添加新磁盘,方法是单击位于控制器:SATA 右侧的方形蓝色图标上的小加号(它没有变灰)。
前提条件是已经有一些SATA 控制器上的可用端口。下图中的“端口数”为 2,仅连接了一个磁盘,为动态添加另一个磁盘提供了空间。

VirtualBox GUI 的“端口数:”

在启动虚拟机之前,将 GUI 的“端口数:”调整为理想值,这样运行时您就会有一些备用容量。我有一个额外的容量,因为虚拟机有一个(登录前删除的)辅助磁盘。

相关内容