如何在具有多个硬盘的 VirtualBox 中设置启动顺序?

如何在具有多个硬盘的 VirtualBox 中设置启动顺序?

虚拟盒的启动顺序设置仅允许在不同类别的设备(如硬盘、光盘、软盘等)之间选择启动顺序。

我可以做的是在启动时按 F12 并从出现的启动菜单中选择一个硬盘,但每次启动时我都必须重复该过程。我如何才能永久更改多个硬盘之间的启动顺序,直到我想再次更改它?

更改硬盘的连接顺序并不是一个可行的解决方案,因为它会改变启动顺序,但也会改变启动系统中的硬盘命名。在真正的 PC 上,我可以在 BIOS 中选择从哪个硬盘启动,并且此设置会永久保留。

答案1

不幸的是,这似乎仍然是一个问题。截至撰写本文时,您可以指定设备类别顺序,但无法指定磁盘顺序

这是一个应该实现的功能。即使由于某些技术原因不允许用户指定磁盘顺序,但在大多数情况下,允许用户指定控制器顺序也会有所帮助。

答案2

看起来 VirtualBox 尝试从控制器端口 0 中的硬盘启动。

因此,我通过更改虚拟磁盘上的接口解决了这个问题,这样我的可启动硬盘就位于 SATA 控制器的端口 0 中。

答案3

如果你使用的是 Ubuntu,请尝试使用VBoxManage

VBoxManage modifyvm [MACHINE NAME] --boot1 dvd --boot2 disk --boot3 none --boot4 none


看看这个来了解一下: https://www.andreafortuna.org/2019/10/24/how-to-create-a-virtualbox-vm-from-command-line/

答案4

创建虚拟机时,您需要按特定顺序选择/添加 HD

对于双高清 (磁盘 1 上的操作系统和磁盘 2 上的备份) 来说,我需要在虚拟机“存储”选项卡上的操作系统之前添加我的备份磁盘。

在一种情况下它可以完美启动(= 启动时无需使用 F12),但在另一种情况下则不行。

命令行等效项是:

sudo VBoxManage storagectl windows --name "SATA Controller" --add sata --controller IntelAhci
sudo VBoxManage storageattach windows --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium ${VMdir}/disk_c.VHD
# sudo VBoxManage storageattach windows --storagectl "SATA Controller" --port 1 --device 0 --type dvddrive --medium ${VMdir}/iso.iso
sudo VBoxManage storageattach windows --storagectl "SATA Controller" --port 2 --device 0 --type hdd --medium ${VMdir}/disk_d.vdi

--

--

如果您的 HD 有坏磁盘号 => 就我的情况而言,我的保存磁盘 D: 被移到了 E:

我应用了“regedit 方法”得益于https://techcult.com/3-ways-to-change-drive-letter-in-windows-10/

我删除了“HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\DosDevices\D:DosDevices\D:”

将“DosDevices\E:”的名称更改为“DosDevices\D:”

重新启动

而且...就这些了,朋友们 ;)

警告:使用此提示需要您自担风险,因此在进行这 2 个注册表更改之前请保存您的数据!

相关内容