如何从终端启动虚拟机?

如何从终端启动虚拟机?

我无法从命令行运行 Virtualbox 机器,我到底需要什么?我首先做了一些研究,但这个命令对我不起作用:

vboxmanage startvm win7 --type headless

结果是:

VBoxManage: error: Could not find a registered machine named 'win7'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "FindMachine(Bstr(pszVM).raw(), machine.asOutParam())" at line 575 of file VBoxManageMisc.cpp
  • “win7” 是我尝试运行的虚拟机。
  • 我可以通过以下方式运行该虚拟机php虚拟框插件非常好。
  • 通过 phpVirtualBox 启动此虚拟机后,我可以完美地从 Linux 或 Windows 进行 RDM。
  • 我正在 Ubuntu Server 14.04.03 amd64 无头安装上运行此虚拟机。
  • Virtualbox版本为:4.3.34r104062
  • 我不知道如何从终端注册此虚拟机,因为它的文件位于使用 NTFS 分区的 USB 硬盘中。

我的目标是在系统启动时运行该虚拟机,最好稍微延迟一下。

我已准备好提供任何其他所需的信息。

答案1

以下是从终端启动虚拟机的方法:

打开 Virtual Box,右键单击虚拟机。然后单击在桌面上创建快捷方式。

在此处输入图片描述

进入桌面,右键单击快捷方式并进行编辑。

在此处输入图片描述

然后复制命令并粘贴到终端。

/usr/lib/virtualbox/VirtualBox --comment "Ubuntu" --startvm "cea829eb-85fe-4842-b98e-e98603094be0"

或者您可以像这样在终端中启动。

获取虚拟机的 UUID

cd "VirtualBox VMs" 
cd your-virtualpc-name
cat your-virtualpc-name.vbox-prev |grep Machine

输出应该看起来像这样。

neil@ASUS:~/VirtualBox VMs/Ubuntu$ cat Ubuntu.vbox-prev |grep Machine
  <Machine uuid="{cea829eb-85fe-4842-b98e-e98603094be0}" name="Ubuntu" OSType="Ubuntu" snapshotFolder="Snapshots" lastStateChange="2015-11-22T08:47:08Z">
      <ExtraDataItem name="GUI/RestrictedRuntimeMachineMenuActions" value="SaveState,PowerOff"/>
  </Machine>
neil@ASUS:~/VirtualBox VMs/Ubuntu$ 

复制机器 uuid

并在命令中运行它,如下所示。使用引号

VBoxHeadless --startvm "cea829eb-85fe-4842-b98e-e98603094be0"

相关内容