How to run a VirtualBox VM from command line?

32

13

I want to know how to start a VirtualBox Virtual Machine (VM) from the command line (using Windows 7) as well as shut it down with the operating system.

What is an easy way to achieve this?

Sebastian Godelet

Posted 2010-11-30T12:56:02.047

Reputation: 384

Actually VirtualBox will recognize a host system shutdown initiated by the user – Sebastian Godelet – 2013-05-10T14:31:48.030

Answers

43

Here's the command I run from a shortcut I have on my desktop. This should work from a command line as well.

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm <NameOfVMHere>

Of course, this is based on typical system defaults. Any given system might have moved the Program Files folder or installed VirtualBox to a custom location.

Joel Coehoorn

Posted 2010-11-30T12:56:02.047

Reputation: 26 787

It's worth noting that the name of the VM is case-sensitive. You'll also need to surround it with quotes if it has spaces in it, and possibly (haven't tried this) escape any other characters that the command processor treats specially.

I see mention of possibly needing to preface the "startvm" operand with "--". That doesn't work for me - I get an "invalid command" error. – rossmcm – 2018-05-24T21:15:36.047

Thanks a million! this command actually has everything anybody would ever do with a VM ^^ – Sebastian Godelet – 2010-11-30T14:30:57.913

9

vboxmanage startvm "winxppro Clone"

Philippe Gachoud

Posted 2010-11-30T12:56:02.047

Reputation: 545

1Could you expand on the answer? It only answers to start-up and not the shut down. – suspectus – 2013-06-23T08:56:58.357

Please provide a bit more explanation about why your post answers the question. – teylyn – 2013-06-23T09:30:31.727

3

I will try to elaborate on @Philippe answer:
Try adding -- before the startvm The command: vboxmanage startvm <machine_name> will start the server which name is "machine_name".
For example if you have a machine that called UbuntuServer then the command will look like so: vboxmanage --startvm UbuntuServer

Note vboxmanage should be in you path to run this command. Add if to your path if not (on my mac it was added with the installation of virtual box.

Vlad Ioffe

Posted 2010-11-30T12:56:02.047

Reputation: 151

2

In Windows 10, you can start a Ubuntu VM using:

C:\Program Files\Oracle\VirtualBox\VBoxManage.exe startvm Ubuntu

where Ubuntu is the name of the VirtualBox VM

To shut down the VM use:

C:\Program Files\Oracle\VirtualBox\VBoxManage.exe controlvm Ubuntu poweroff

You can also use other commands with controlvm such as pause, resume, reset, poweroff, savestate to achieve different actions.

alpha_989

Posted 2010-11-30T12:56:02.047

Reputation: 623

0

I started a VM in this way:

VirtualBox.exe --comment "Ubuntu 16" --startvm "96852e73-a304-4357-b7ef-440913601f3f"

It starts headless I think.. no gui shown.. Now I wish to see the GUI of that VM from the HOST... is it possible?

Zibri

Posted 2010-11-30T12:56:02.047

Reputation: 191