%all.entities; ]> VBoxManage Introduction As briefly mentioned in , VBoxManage is the command-line interface to &product-name;. With it, you can completely control &product-name; from the command line of your host operating system. VBoxManage supports all the features that the graphical user interface gives you access to, but it supports a lot more than that. It exposes all the features of the virtualization engine, even those that cannot be accessed from the GUI. You will need to use the command line if you want to do the following: Use a different user interface than the main GUI such as the VBoxHeadless server. Control some of the more advanced and experimental configuration settings for a VM. There are two main things to keep in mind when using VBoxManage. First, VBoxManage must always be used with a specific subcommand, such as list or createvm or startvm. All the subcommands that VBoxManage supports are described in detail in . Second, most of these subcommands require that you specify a particular virtual machine after the subcommand. There are two ways you can do this: You can specify the VM name, as it is shown in the &product-name; GUI. Note that if that name contains spaces, then you must enclose the entire name in double quotes. This is always required with command line arguments that contain spaces. For example: VBoxManage startvm "Windows XP" You can specify the UUID, which is the internal unique identifier that &product-name; uses to refer to the virtual machine. Assuming that the VM called "Windows XP" has the UUID shown below, the following command has the same effect as the previous example: VBoxManage startvm 670e746d-abea-4ba6-ad02-2a3b043810a5 You can enter VBoxManage list vms to have all currently registered VMs listed with all their settings, including their respective names and UUIDs. Some typical examples of how to control &product-name; from the command line are listed below: To create a new virtual machine from the command line and immediately register it with &product-name;, use VBoxManage createvm with the option, as follows: $ VBoxManage createvm --name "SUSE 10.2" --register VirtualBox Command Line Management Interface Version version-number Copyright (C) 2005-2023 Oracle and/or its affiliates Virtual machine 'SUSE 10.2' is created. UUID: c89fc351-8ec6-4f02-a048-57f4d25288e5 Settings file: '/home/username/.config/VirtualBox/Machines/SUSE 10.2/SUSE 10.2.xml' As can be seen from the above output, a new virtual machine has been created with a new UUID and a new XML settings file. For more details, see . To show the configuration of a particular VM, use VBoxManage showvminfo. See for details and an example. To change settings while a VM is powered off, use VBoxManage modifyvm. For example: VBoxManage modifyvm "Windows XP" --memory 512 See also . To change the storage configuration, such as to add a storage controller and then a virtual disk, use VBoxManage storagectl and VBoxManage storageattach. See and . To control VM operation, use one of the following: To start a VM that is currently powered off, use VBoxManage startvm. See . To pause or save a VM that is currently running or change some of its settings, use VBoxManage controlvm. See . Commands Overview When running VBoxManage without parameters or when supplying an invalid command line, the following command syntax list is shown. Note that the output will be slightly different depending on the host platform. If in doubt, check the output of VBoxManage for the commands available on your particular host. Each time VBoxManage is invoked, only one command can be executed. However, a command might support several subcommands which then can be invoked in one single call. The following sections provide detailed reference information on the different commands. General Options : Show the version of this tool and exit. : Suppress the output of the logo information. This option is useful for scripts. : Specifiy a settings password. : Specify a file containing the settings password. The settings password is used for certain settings which need to be stored in encrypted form for security reasons. At the moment, the only encrypted setting is the iSCSI initiator secret, see . As long as no settings password is specified, this information is stored in plain text. After using the option once, it must be always used. Otherwise, the encrypted setting cannot be unencrypted.